机器人社区 机器人DIY专区 机器人超市
本站文章总数已达1500余篇,持续更新中!
  《机器人》第二章-小心!机器车辆!    3星级
《机器人》第二章-小心!机器车辆!
[ 作者:[美]汉斯.莫拉维克     来源:YRobot     点击数:     更新时间:2006-9-7     文章录入:robot
【字体: 字体颜色

点击进入

  20世纪70年代,每当汽车沿着位于斯坦福大学后面山脚下的道路行驶时,奇怪的景象就会映入乘车者的眼帘。层层地形中,有骑马场、奶牛场、小餐馆。山顶上有一个玻璃般明亮的圆形建筑物,它是刚着陆的太空船吗?险峻的盘山道边立着橙色路标“小心机器车辆”。难道是1951年的电影“地球平静的日子”中,有恶意的外星机器人把守着的坡道入口吗? 

  这样猜并不全错。这个建筑物是通用电话电气公司从斯坦福大学租借来的,用作中央研究实验室。20世纪60年代中期计划发生了变化,这个建筑物不得不在未建筑好的情况下被搁置。由于找不到其他买主,建筑物就归斯坦福大学所有,作为临时仓库并供校内的课题组使用。约翰.麦卡锡的“人工智能项目”、之后又改名为斯坦福大学人工智能实验室(SAIL)的组织从1968年到1979年一直设在那里,算是在那里时间最长的团体了,直到斯坦福大学管理处发现运作和维护这个庞大机构的费用很高时才有所变化。

  路标警告人们,小心细长的由电视发射装置控制的电气车辆,它有纸牌桌那么大,称为斯坦福卡特车。有时,它会在建筑物旁的车道上或停车场内用它那四个小轮胎以人行走的速度行驶。这个卡特车由房里的人通过观察机器人发射的电视信号来进行遥控。在人工智能实验室里,一屋子的计算机处理接收到的电视图像,进而控制卡特车。斯坦福卡特车的确是个自主的移动机器人。1971年,在博士生罗德.施米特(Rod Schmidt)的工作中,在一种严格的机器人测试下,卡特车能缓慢地沿着白线行进。我的工作重点是,在1975年使它能看着地平线上的树木而沿直线前进,在1979年它能窥视到、并能设法绕过障碍物。遗憾的是,穿过三十米长的屋子竟花了五个小时,令人难以理解,并且在四次实验中就有一次会失败。

 

图2.1 斯坦福大学人工智能实验室的卡特车

  20世纪70年代,在机器和道路都处于尝试阶段的情况下,斯坦福卡特车以合成图像再定位的方式,在实验室外面的道路行驶。

  传统机器人的典型特征是行动笨拙,这足以使机器人的狂热者感到很懊恼。1969年,约翰.麦卡锡在一篇文章“计算机控制的汽车”中提到,以斯坦福卡特车为基础,可研制出一种计算机驱动的有视觉的机器人,它能在正常交通状况下行驶。保守的观点认为,自动车辆将会在埋有信号发射线的特殊路面上行驶。三十年过去了,计算机技术虽已飞速发展,但仍未出现自动驾驶车辆。

  为什么这些聪明人的直觉与实际相差如此悬殊?当从特定的优势的角度来看某一领域时,对完成这一领域的任务在智力、感觉、动力上需克服的困难常会出现估计上的错误。经过上亿年进化而成的人脑恰是人类最有优势之处。人类的动物祖先之所以被进化所选择,是因为获得了生命的必需品、繁殖以及打败了对手。比较而言,文字、数学、逻辑推理等就是近期文明的产物。我们发现感觉是很自然和轻松的,而“大脑工作”是困难和乏味的。稍稍一瞥就能看到棋盘上棋子位置,但下出一步好棋则需费力思考。

  人们为建造可感觉、能行动、会思考的机器而花费的数十年努力,使人们有了一个完全不同的认识。机器的感觉和行动,正如思考一样,由许多简单的步骤组成。很明显,在照相机中进行可靠的棋子定位所需的步骤,千倍于下出好棋的步骤。

  从第二次世界大战所使用的技术中,得到了机器像动物或人一样行动的可能性。一方面,武器的伺服机构要求电子驱动装置能跟踪精确动作,并对轻微变化进行响应。另一方面,数字计算机可以破译代码、计算火力布置、模拟原子弹爆炸。以超人的精确度和无比的速度执行着巨大的数学和逻辑程序。

控制论的产物

  数学家诺伯特.维纳(Norbert Wiener)对投弹瞄准器的复杂性预测和防空火炮指挥系统的理论发展起到重要作用,他与来自美、英等国的一些心理学家、生物学家、工程师以及其他领域的科学家一同开辟一个新领域。维纳称之为控制论,即关于生命体和机器中控制和通讯的科学5。以此为基础,科研人员将许多电子器件组成人工神经系统,以学习、识别简单模式,并研制龟形的、可躲避障碍、能寻找光线的机器人。

图2.2 1950年,沃尔特博士在对一个感应光线的小乌龟动手术

  从图中可看到,在小乌龟“埃尔西”机械顶上装有碰撞检测开关,还有一个保护外壳。

图2.3 1964年,两个最早型号的“霍普金斯野兽”在插座上充电

  这种机器人通过声纳引导,能沿墙寻找插头。大的机器人增加了一层含有光电管电路的装置,能从远处找到光学上和墙有反差的插头。

  从1948年到1951年,英国心理学家沃尔特(W.Grey Walter)在英国造了六个电子乌龟,它们都带有超微型电子管大脑、旋转光电眼睛、接触开关式触角6。它们能在行走时避开障碍,在有特定光线召唤时能返回出发地。当几只小乌龟在一块时,它们会对彼此间的控制光线和触觉信号有所反应,表现出意想不到的社会行为,例如跳舞。

  20世纪60年代,比电子管尺寸小、价格便宜、功耗少的晶体管出现后,约翰.霍普金斯大学应用物理实验室研制了更复杂的机器人。“霍普金斯野兽”在实验室大厅里漫步,侧面的声纳引导装置能使它一直处在中线上。电池不足时,特制的光电管眼睛会在洁白的墙上寻找小黑块,这是电源插座的明显特征,找到后就插入充电。“野兽”激发了一些模仿者。  有些机器人用电视摄像机代替光电管,用集成晶体管逻辑门实施控制,每台计算机的集成电路中包含数以百万计的这种逻辑门。有些机器人则对基本动作技能加以完善,增加了新的动作,如抖动脱开充电臂。

  控制论的早期研究成果曾给这个领域带来近二十年的繁荣,但在20世纪60年代晚期走向低谷。因为遇到了更具挑战性的问题,而传统研究方法却无能为力,如研制实际的阅读机。

人工智能体

  电子计算机给机器思考带来了完全不同的方法。1936年,艾伦.图灵(Alan Turing)提出通用计算机的数学原型,它可通过编程模仿任何信息处理器,图灵用它来表述当时未解决的问题。在第二次世界大战中,他的想法付诸于巨型电子计算机,成为英国的最高机密。这些机器破译了德军潜艇密码,使盟军战船得以躲开德军火力密集点,从而赢得了战争。二战后,图灵考虑研制具有人脑各项功能的通用计算机。尽管他在战时的成果一直被保密到1974年,但他在智能机器方面的思考,通过1950年BBC广播电台的系列讨论和一些文章公诸于世。

  图灵于1953年去世,但在此问题上的争论一直都在进行着。在美国,冯.诺伊曼(John von Neumann)将数学和计算机用于原子弹设计,也进行着人工模仿生命和思维方面的思考。他的研究在1956年去世之后中断了。但是悬而未决的问题仍然有待解决,随着更聪明的计算机程序的出现,电子“大脑”的巨大能力可不可以完成超过死记硬背的任务呢?

  第一代计算机似乎是机器思考领域的车头。它们确实大如火车头,在当时它的工作能力是惊人的,可解决许多一直劳累着数学家的计算问题。1955年左右,一批充满激情的年轻学者,开始从事研究扩展计算机技能这一挑战性课题。1956年,在达特茅斯大学召开的有关这一研究领域的第一次会议上,约翰.麦卡锡称之为人工智能。会议上,艾伦.纽厄尔(Allen Newell)、赫伯特.西蒙(Herbert Simon)和乔治.肖(George Shaw)展示了他们研制的“逻辑推理者”,也就是这一领域中第一个运转程序。以罗素和怀特海德著名的《数学原理》一书中的数论公理为基础,“逻辑推理者”能够应用演绎推理的规则证明许多定理。令人困惑的是,尽管以“逻辑推理者”为核心的计算机JOHNNIAC每秒可以超人般地进行上万次运算,而一个大学新生在定理证明方面却比它做的又快又好。程序需将符号译成数字,对一个逻辑语句进行一个规则的推理需要几百次的计算,定理证明则需对很多很长的推理链进行探测,直到找到一种证法。

  在此之后的十年中,计算机程序能证明几何定理、解决微积分问题、下跳棋和国际象棋。虽然在数学和编程方面采取了许多高效措施,但这些程序在实际应用中也仅仅具有新手的实力。很明显,每个程序都不会超过编写它的专家。因此,似乎没有办法赋予程序以生活中的“判断力”。

易之难

  20世纪60年代末到70年代初,计算机大脑推理和智能图像处理间的差距越来越悬殊。麻省理工学院的马文.明斯基(Marvin Minsky)科研小组和斯坦福大学的约翰.麦卡锡小组将电视摄像机、机械臂与计算机相连,于是“思维”程序就可以直接从真实环境中获取信息,早期的结果难以令人满意。当推理程序能像大学一年级学生一样完成推理任务时,程序不但很难编写,而且在运行中得花费几个小时才能找到并拿起桌面上的块状物,就这还经常失败,表现得比六个月的婴儿还差。现在,环境交互程序与推理计算程序间的差距仍然存在。在二战后的五十年中,计算机处理能力增长了百万倍,受此激励,上述各项技术在几十年间都有极大的提高,但机器人只有婴儿或小动物的行为能力,这确实让人感到惭愧。20世纪80年代以来,计算机在国际象棋上已达到国际特级大师的水平。1997年5月,IBM的“深蓝”击败了国际特级大师卡斯帕罗夫,而卡斯帕罗夫或许是人类目前最优秀的棋手。遗憾的是,“深蓝”需要人来帮助看和移动棋子。还没有一个机器人能完成卡斯帕罗夫所做的工作,机器就连一个小孩的行为都实现不了。

  对于机器而言,计算要比推理容易得多,推理又要比感知和行动容易得多。为什么难易顺序正好与人相反呢?在十亿年的进化过程中,人类祖先的第一个进化选择都为了能在逆境的竞争中赢得生命要素,常常用一生的时间在竞争中更有效地感知和行动。达尔文的进化过程使人类的大脑具有获取和行动的特殊本领───这点因为太平常而常被忽略。另一方面,像下棋这样的深度理性思考能力,是近期才获得的,或许不到十万年。参与这项思维活动的大脑组织得并不很好,绝对地讲,人类并不非常擅于此道。但直到计算机出现以后,人类的这一局限才显露出来。算术运算能力也非人类的长项,它是在近百万年来随着人口的增长和财产的积累中,才逐渐成为一项必需技能的。在进行算术运算之前,我们很幸运地具备了感觉和处理能力、语言技能,并找到了数字的合适表述。

  本章后面的计算表明,只有机器的计算能力百万倍于20世纪90年代中期的家用计算机时,它才具有人脑的感知和运动控制功能,这些深层次功能是人类大脑独特之处。算术能力是人类行为的某一极端表现。出于好奇,人们偶然要进行庞大的脑力运算技能表演,一些“闪电人脑”在12位数一出现即可完成相加运算,在1分钟内可完成相乘运算。而家用计算机要比此强上几百万倍。在追求另外一些极端的行为中,现有计算机可大致与人类匹敌,如下棋的深度思考、定理证明、从众多症状中诊断病因等等。

  当推理问题超出狭窄的逻辑范围,需要一些形象化或更广泛的常识来辅助判断时,计算机就比不上人类了。时至今日,人工智能程序还没能展示出人类常识。例如,一个医疗诊断程序遇到坏自行车时,或许会开出抗生素的处方。这并不奇怪,因为它缺乏人、疾病、自行车的概念。用这样的程序处理日常生活中的细节问题的话,它们当然会不知所措,因为每个要素和其他要素都会以庞大的“组合爆炸”式相互作用。[1985年,德克萨斯奥斯丁的微电子和计算机协会开始执行一项称为“Cyc”(取自Encyclopedia)项目,目的是建立一个常识数据库。研制者们估计数据库最终要包含上亿条有关日常事物的逻辑语句。由于图像检索等应用程序需建立更大的数据库,而这个基本要求并不过分,所以这项计划目前仍在进行之中。]

  尽管机器有许多不足之处有待弥补,但在20世纪的大部分时间里,每二十年机器计算力就会有上千倍的提高。在计算机领域中,这个发展势头至少可以维持几十年。用不了五十年,便宜的计算机在原始信息的加工处理能力上将与人脑相匹敌,甚至胜出。但通过编程使这些强大的机器像人一样感觉、思考的前景又如何呢?

与昆虫比赛

  控制论试图通过模仿神经系统的物理构造来实现其功能。20世纪60年代构造最简单的人工神经系统时,面临的困难使此方向的研究停滞不前。然而20世纪80年代,在神经网络的影响下,该方向又重获生机,此时计算机已具有对神经网络进行有意义模拟的能力。通过重复学习步骤来改变相互连接权值,神经网络可根据给定的输入产生理想的输出。在某些模式识别问题中,输入和输出的关系不清楚,但不太复杂,神经网络有时能轻松地提供比其他程序技术更好的结果。但最多只有涉及几千个神经元,数量上比一只昆虫的还少,因而目前的模拟还不能完成复杂行为。直接复制神经系统以获得智能行为的方法还受其他问题的限制。因为考察大脑的运作细节是个既慢又烦琐的过程,所以真实神经系统高一层次的功能和结构仍然是未知的。高速浏览真实神经系统的微小细节的新工具,也许在将来会有所作为。

  人工智能已经成功地实现了理性思维表层的意识行为,这也使表层下面众多未被探测的无意识的过程显露出来。建造真正的智能机器就意味着要探索这些领域,从理性顶层探索到适应性底层。随着功能不断增强的计算机被用于空前复杂的适应性系统,或被用于空前全面的推理程序,这个探索历程或许会开始于两端中的任一端。

  我认为机器人领域中的实用技术能够首先做到这一点,它能超常地将计算机科学中的推理程序、适应程序以及强有力的数学工具结合起来,建造在物质世界中可看到和可行动的系统。我觉得机器人的发展大体上重复了生物的进化,所涌现出的一代代机器人的性能类似于不断增加的动物神经系统的复杂性。机器人研制的过程是,首先观察人和动物的神经元、组织结构、行为特性,接着进行机器人设计,最后再由市场的成功与否检验。在此过程中,可采用无限制的任何有效方法来解决出现的问题。

  目前,控制最好的商业机器人的计算机能够产生昆虫级的行为。它们的耗资不少,社会用途却很少,仅在工厂作为喷涂车、点焊车、安装电子器件和将东西移来移去。现在世界上这种机器人的数量也仅在十万个左右。在太空应用领域中,例如星球、宇宙探测等,性能更为完善的机器会有更大的潜在市场。几十年来,这一诱人的前景一直促使政府和工业资助保持在适度的水准上,遗憾的是研究进展相当缓慢。20世纪90年代,在计算机飞速发展的激励下,这个领域开始发展。研究中的机器能在室内和室外的正常环境中顺利行走,商业程序能阅读课文并翻译语言。

  在未来十年中,机器全面智能化的进程将大大加速,我相信机器人数量会大增,应用范围会慢慢拓宽以满足普遍要求,最终成为通用机器人。最初,这些物质世界中的机器就像数据海洋中的个人电脑一样,只能死板地服从预先安排的命令序列。渐渐地,它们的技巧和能力增长,最终在每件事上都超过人类。通用机器人的内容在下一章中介绍,这章论述的是它们出现的前期积累过程。

  20世纪60年代中期到80年代中期,大部分工业机器人是汽车装配线上的机械臂,并且大部分的机器人研究者也只关心机械臂。绝大多数机械臂是固定的,所处的环境也很简单。因此在工业或研究背景下,机械臂能很好地与专用夹子、检测器和其它装置机构配合。它们具有非常有效的专用功能,但背离了通用机器人的许多要求。固定机械臂与移动机器人似乎处在不同的进化途径上。移动机器人面临的是多样的、充满怪异的世界,所以它的感觉和行为必须具有灵活性。

  移动机器人是这一新生的计算机控制机器人领域中的最年轻一代,并在1985年后成为此领域中的主角。1985年前为数不多的工作重点之一是阿波罗登月计划。大约从1965年开始,NASA的喷气推进实验室致力于半自主行星行走者的研制。几十年来,他们的努力随着每次实际发射而潮起潮落。这最终在火星探测器索杰纳(Sojourner)和其上更小的探测器上取得了成功,1997年,正是索杰纳成功地探测了火星的一部分。另一个是1966年到1972年间一直运作的斯坦福研究院的机器人谢基(Shakey)7,它是第一个计算机控制的移动机器人。1968年到1980年,斯坦福大学卡特车计划是另一个典型代表,此项计划的成果是两篇博士论文,其中一篇是我的论文。我现在还记得卡特车计划的详细内容。20世纪70年代末,价格相对便宜、体积相对小的计算机问世后,世界上出现了更小型的移动机器人。

绘图方法

  约翰.麦卡锡的“计算机控制车辆”一文中所述的情形能实现吗?1969年,斯坦福研究院研制的当时唯一的计算机控制的自主有轮小车,实际是高1.5米、移动缓慢的室内机器人。谢基是人工智能第一次研究高潮的产物,它的推理程序运用定理证明的方法,以判断屋子、墙壁、门窗、道路等障碍物或可移开的物体。将摄像机和范围测定装置的数据转化成推理程序可识别场景描述的程序,以及使机器人执行运算结果的程序,都被认为是外围程序,它们由辅助工程师完成。20世纪70年代早期,计算机视觉研究开始还不到十年,几乎所有视觉研究都是在“块组合”基础上进行的,最初的计算机视觉成果是麻省理工学院研制的,它能在桌面上寻找小孩的积木。斯坦福研究院建立了一个与上匹配的系统,实验场所是四周白墙的屋子,屋里放有一些颜色一致的障碍物和锲型物。谢基是在1970年《生命》杂志上有点误导文章的焦点,它的最大成就是把一个锲型物移到阻塞物边,先举起,紧接着放下,最后脱开,整个过程被逐一地记录在胶片上。这是个多任务过程,对每个易出错的过程都需要花几个小时进行处理。

  麦卡锡的挑战性在于对未涉足领域的介入。斯坦福人工智能实验室和数字设备公司在1969年研制的PDP-10能以1/2 MIPS(MIPS,Million-Instruction-Per-Second,是指每秒执行一百万条指令,每条指令类似两个八位数字量相加)速度运行。为满足行驶的需要,机器人必需每秒处理多幅图像。如何做到这一点呢?一个很好的数字化路面图像本身就是百万个数字量的排列。一个程序遍历这些像素(图像的基本元素)要几秒钟,重要的处理就需要几倍长的时间,它怎么能快速响应交通、路标、路障以及其他在图像中一闪而过的细节呢?

  也许程序可以选取每个图像中的必要部分。1971年,罗德.施米特在第一篇以斯坦福卡特车为主题的论文中使用了此方法。施米特的方案充分利用了存储空间,程序 被有效集成为大约二十万字节,程序的编写很费力。这样,卡特车沿着地上的白线缓慢地移动。在这个方案的具体实现中,使用了对摄像场景里中线的位置进行预测的预测器,以过去的位置为基础,约搜索下一幅图像的10%后,再确定它的位置。新得到的位置作为下一步预测和移动方向计算的输入信息。用PDP-10的一半运算能力,即1/4MIPS,程序就可1秒钟处理一幅图片。如果场景中的白线无间断,无太大弯曲,并且是干净的,明亮程度一致均匀,卡特车一次能沿线移动15米。应付简单的意外情况,例如因阴影导致的明亮程度的改变,处理时间就要增加好几倍。若要对路障、路标以及其他意外做出检测和反应的话,问题将变得更复杂了。

  谢基与同时期的其他移动机器人的视觉程序在原理上是一样的,先将图像简化到极少系列的几何边缘,然后再进行处理。在户外场景中,这种获取简单边缘特性的方法并不适用,而需要更多复杂的图形和颜色类型。在乔舒亚.莱德伯格(Joshua Lederberg)、约翰.麦卡锡以及斯坦福的一位获诺贝尔奖的遗传学家的热情支持下,斯坦福人工智能实验室开始研究与“块组合”方法不同的方案,研究成果用于寻找火星上的生命迹象。计算机根据水手4、6、7、9号所拍摄的火星数字图像,先对几何图形和颜色做记录,再分析对同一位置在不同时间所得到的图像,于是就可检测出任何细微的差异。由于飞船不能确切定位,只能大体定位,所以图像的配准可根据表面特征完成。研究生林恩.夸姆(Lynn Quam)和其他人使用了统计分析、强度对比、查找和转化方法,完成了这项工作。很遗憾,没发现明确的生命迹象。由于成功地处理了复杂的自然场景,火星探测方法看来也适合户外自动车辆的图像处理。NASA的火星行走计划得到促进,于是斯坦福卡特车方案和火星计划的关系就更加密切了。我怀着对太空和机器人研究的憧憬,于1971年底进入这个课题组,随后我采用了布鲁斯.鲍姆加特(Bruce Baumgart)的小车方案,另一位研究生在计算机图形和视觉方面对其加以研究。起初小车还不怎么出名,但与夸姆讨论后,实施计划被制定出来,这使我能研制出运转车辆和PDP-10驻留的动力控制软件。夸姆和课题组将图像方法用于视觉导航。到1973年,我有一个很好的机会建立驱动机器人的新硬件,并能测试其软件。由于一次遥控失误,我使可怜的卡特车撞到了坡道。几个月以来的低维护费无法使之修复,图像发送机仍处于瘫痪状态,我只好向麦卡锡请求补充投资几千美元。他答应了,但条件是我首先得证明编写计算机视觉程序的能力。

  实时处理在火星图像的处理中并不是问题。这一任务耗时数年,直到发射水手9号,每次卫星都得到数十幅图像中寻找精确的密度匹配部分。斯坦福卡特车方案放弃了精确度和覆盖度,以换取速度。许多任务似乎只需两个基本的图像操作就能完成,一是挑选出好的特征集(图像中许有特别的区域),另一个是对同一区域从不同视角来寻找。三角测量、障碍检测、机器人运动演绎可以确定三维位置。我寻找实现这些想法的快速算法。采用空间压缩图像技术可完成大量工作,4、16、64以及更多像素的平方被平均为一个数,然后用汇编语言巧妙地编码,而我的算子能在一幅图中挑出许多有用特征,并得到另一幅图。整个过程计算机大约只用10秒钟。1975年,我以此为基础编写了跟踪斯坦福人工智能实验室周围路面水平特征的程序,控制卡特车的行驶方向。程序反复地数字化图像,用15秒决定每幅图像间路面边界(通常是两边的树)、天空间特征的水平位移,算出行驶校正量,这样机器人一次可向前移动多达10米。对于这种简单的任务,它会出色地完成,观看起来也觉得很有趣,但却对主要的目的用处不大:即为接受复杂情形的考验,通过视觉跟踪三维环境使小车穿过障碍区。这需要建立映射图、进行障碍识别以及设计安全路线,最终根据周围环境的情况推断及更正机器人的运动。我的想法是从开始就全部由三维图像处理方法来解决这些任务,希望机器人最终能在实验室外面崎岖的路面上行走。

图2.4 1970年───机器人谢基对障碍物进行处理

  斯坦福研究院研制的谢基,是由远端大型计算机控制的,通过摄像机轮廓处理和激光范围测定,推理程序会得到有选择的场景数据。在一个好天里,它能在几小时内执行一些计划,包括从一地移到另一地,以及推开障碍物以达到目标。
斯坦福卡特车携带着一台摄像机,于是很自然地在移动中通过多视点进行三角测距。由于环境难以预测,所以卡特车的运动必须随着被跟踪物体位置的变化而随时计算出。火星课题组也面临着同样的问题,研究生唐纳德.杰内里(Donald Gennery)专门为此编写了“摄像机求解程序”。从1977年初开始,我一直对这个方法进行研究。程序能在一幅照片上选取100多个特征量,然后驱动机器人向前移动大约一米。停下来拍另一张照片,再在上面寻找同样的特征量。最后,摄像机求解程序确定机器人的运动,特征量的三维位置能够解释一幅图到另一幅图的明显位移。不管更精细的调整,但程序的出错率从来没有低于25%,这意味着机器人对它的位置感到困惑之前,最多移动四米。摄像机求解程序不断地纠正机器人位置的估计值,使特征量尽可能排列起来,丢弃那些相去甚远的。这非常适用有很少匹配错误的近似二维的太空飞船图像,并且在具备很好的初始摄像位置估计和图像间侧面位移的情况下。

  在场景中,有干扰的图像产生较差的位置估计,再加上一帧到另一帧的视觉失真,我面对的数据是另一码事。由于视点的不同,或有光线影响,或存在摄像机的干扰,在第一幅图中选定的区域会在第二幅图中消失或改变,所以10%到20%的特征量匹配是错误的。前移立体照片中摄像机轴附近的点在数学上是不可行的,因此在我的低分辨率图像中,位置精确性是适度的。在每四次行走中,非常有必要在其中三次追踪大约100个特征量,这样机器得花几分钟去计算。我在数学和假设方面对程序下了几个月的功夫,但收效甚少。后来,我选择增加一些机器人硬件来减少不确定性。

  多摄像机或者可重新定位的摄像机,能在机器人上实现真正的立体视觉和相关视点精确定位,消除不确定性。这样的话,两个特征量间的共有三维距离保持不变,可以消除机器人在两次运动停止间的不匹配特征量。维克.沙因曼(Vic Scheinman)是一个正在读研究生的工程师,他的研究兴趣是机械臂,但他常为斯坦福卡特车方案提供机械方面的指导,而一个可以使摄像机从一边滑动约60厘米到另一边的机械装置,更为我的工作奠定了基础。如果让它运转起来,就能提供很好的立体基准。利用九路冗余度,在轨道上九个位置进行拍照可以大大地减少误差。

  在1979年10月第一次调试中,程序能跟踪30个图像特征量,可以驱动机器人穿过屋子,避开障碍物,积累场景的稀疏映像。每准备前进1米,当时的计算机(现在是运算速度1 MIPS的KL-10)得运行10分钟。它要到达屋子的另一端,即30米外的目的地,需要五小时,每四次中大约有三次成功。在户外测试中,小车行进大约15米后就会判断不清。阳光和阴影的强烈对比能使老式摄像机不知所措,大大地降低了它的视觉。

  失败往往是删除了连续两次停顿所引起跟踪特征量的误差而导致的。九个视点的立体视觉,能可靠地确定每次停顿的三维空间中相关机器人的方位特征量。尽管运动后图像的参考帧会改变,但两个特征量间共有的三维距离不变。删除过程中,尽可能地滤掉违背上述规则的特征量,最多时可以去掉100个原始数据中的一半。偶尔,也会出现一些不匹配点比正确点更强地支持过滤规则的情况,这时它们会被保留,而正确点将被删除掉!这种情况大约100次移动中出现1次。这就使机器人错误地估计了它的位置和方向,搞混了积累映像,最后陷入困境。

栅格方法

  1980年,取得博士学位的我来到了卡内基.梅隆大学,建立了一个小型“移动机器人实验室”以研制新型机器人。我最早的两个学生拉里.马西斯(Larry Matthies)和查克.索普(Chuch Thorpe),利用一些限制条件,例如室内的地板是平坦的,减少图像,从而简化了程序并将运算速度提高了十倍。通过对几何不确定性更精确的建模,他们提高了小车的导航准确性。这种变化对100次中就会出现1次导航失败的情况几乎没什么影响。很明显,考虑到匹配的差错率,这100个特征量太容易出错了。这样,偶尔的错误压倒正确数据的可能性就显得很重要了。

  1984年,我们的实验室与一个小公司───丹宁移动机器人公司,签定了研究合同,要求我们用24个声纳单元的障碍检测带产生的范围度量,来操纵机器人。对于普及型机器人,计算机视觉太昂贵了,而仅仅几美元就可以得到用于自动聚集的偏振摄像机的声纳设备。

  每个声纳度量的是30°角度的声波束的回波时间,尽管距离非常精确,但因侧面30°范围很大,而无法明确回波来自何处。斯坦福卡特车方案的技术,依赖于场景中特征量的精确位置,所以即便可靠性和快速性相当好,在此也无法被使用。另一个学生阿尔贝托.埃尔费斯(Alberto Elfes)和我一同设计了一种完全不同的方法───不对物体的位置进行分类,而是积累位置的“物体性”。尽管特别物体的特性甚至存在与否总被怀疑,可以肯定地认为机器人周围的位置是存在的,能被当作永久性的“存储桶”,以稳定地积累哪怕是内容的一丁点迹象。

  机器人周围的的区域被分成栅格。程序给栅格的每个单元赋以数值代表积累的证据,也就是说,相应的单元包括一些内容或什么都没有。随着每次声纳激励,含有信息的单元被更新。在回波距离处的单元被占据(因为此处的任何物都将导致更短的回波)。声音强度和检测可靠性随着声纳离中心点的距离增大而减弱,所以得到的证据量也据此发生变化。

  1985年,我们第一次用栅格证据方法使机器人建立环境映像图,来解决斯坦福卡特车的问题。令我们惊奇的是,机器人竟然以极高的可靠性穿过了杂乱的实验室。但是这种方法实用吗?很合理的三维栅格将屋子分成几百万个单元,每次声纳度量都会影响其中上万个单元,这对计算机存储量和速度的要求远远超过了当时机器人上所安装的计算机。使用边长30厘米的二维单元粗略栅格,在运算速度为1/2 MIPS的丹宁机器人上,我们研制了能进行每秒十次声纳反馈信息处理的有效程序。操纵机器人的关键一步,即校正同一区域的两幅映像图,需要3秒钟。对于快速的移动机器人,这些性能指标并不是很理想。将来基于更强运算能力的机器人也许会有更好结果,但当时公司就采纳了这项方案。

  与此同时,我们用海军科研处的经费继续沿着这条极有希望的道路探索。我们用栅格的方法进行立体视觉距离提取,然后将空间数据和声纳数据结合到一个映像图中。我们的方法是有坚实的概率论基础。我们获得了运算能力更强的计算机设备后,做了大量实验。实验揭示,在狭窄而墙壁光滑的走廊里(恰与我们实验室杂乱环境不同)声波被不断反射,类似光线在充满镜子的大厅里的情况,此时大部分的反馈信息是不正确的,得出的映像图也不会有价值。处理程序是以声纳单元的分类为基础编写的,而此时并不能表明声纳数据真正给出环境信息。

  1990年,我们用一种“学习”算法寻找更好的环境模式。将环境模式译成带有12个参数的数学公式,这些关键参数控制着模式的形态。我们先仔细地测量门廊,人工建立了近似理想的映像图。然后让机器人沿已知的路线穿过门廊,隔一定的距离收集声纳数据。我们编写程序,重复处理收集的数据,******器人穿越门廊的映像。每次模拟之后,程序都要将结果与理想的映像图比较。然后修改证据公式的关键参数,再进行模拟。如果新证据模式的结果与理想情况更接近,程序会将关键参数向同一变化方向调整,否则就向其它方向调整参数。在10 MIPS的机器人上进行上万次的模拟移动,耗时数天,程序才能找到合适的证据模式,以再现环境。这种方法对墙壁光滑的场景同样适用。

增强的感知力

  在10 MIPS的计算机上可运用二维证据栅格,速度能满足正常的室内要求。20世纪90年代,以二维栅格和其他有同样复杂度的映像算法为基础,世界范围内越来越多的科研机构,对机器人在办公场景下行走的研究加大了投入。尽管短期内出现了一些印象深刻的示范表演,但它们总是出现碰撞、迷路等问题。也许一天中会遇到数次。虽然它们比斯坦福卡特车那几十个特征量的稀疏表示要高级,带有几千个单元的映像图,但仍有可能被错误数据的偶然结合所欺骗,这一点是值得注意的。

 

图2.5 1990年,难以穿越门廊的二维证据栅格

  图中为机器人沿着8米长的门廊,得到的624个范围度量值.此机器人有带着24个偏振片的声纳单元带。镜子般的墙反射使这些数据要么过长,要么丢失。通过学习调整,可以再现声纳度量的证据模式,能很好地进行64*32单元的栅格重建。被穿越的门廊从左到右,起始处在图中右上方。

  环境中独立事件数量的增加可以降低误解概率。增加证据栅格信息的最好途径是,全部用三维处理。在二维处理中,高度不同的门把手和桌面等其他东西被测的总是不一致,可能只是一个模糊映像图。将处理单元的边长减小到10厘米左右,也不会有太大的效果。在三维空间中,这些是一致的,不会出现模糊现象,栅格的分辨率会更高,单元内容会更确定。在二维空间中,一把椅子只是占据若干个单元的模糊东西,无法与其它具有同样尺寸的物体区分。在三维空间中,椅子就会有座位、椅腿、椅背,能由形状确认。三维图像可以使程序规划复杂路径,不仅可以四处迂回行进,而且能跨越障碍。视觉出错的可能性变得微乎其微。

  这样做的代价是很高的10 MIPS的机器可处理几千个单元的二维栅格。二维栅格的分辨率若要提高四倍的话,其单元数得增加到16倍。三维栅格的效果也受第三维增加的影响,如果三维栅格的高度是100个单元的话,那么三维中存储和处理的单元数或许是二维的几千倍。三维处理似乎需要运算速度超过1000 MIPS的计算机。

  20世纪90年代初期,只有超级计算机的运算能力达到1000 MIPS。1992年,我在生产超级计算机的一家公司作客一年,该公司在波士顿。我最初想在新型CM-5机器上编写程序,将证据融入三维栅格。CM-5由几百个20 MIPS计算机紧凑地组成。由于我所希望的编程环境没准备好,于是我在普通计算机工作站上开发程序,最终在CM-5上运行程序的拷贝。

  这最终发展成耗时八个月的项目。大栅格算法对刻度来说更经济。传播轴向对称证据可以很好地再现每个检测器,因此也能够被柱面的二维径向切片所再现,用不着三维处理。对于每次度量,将这些切片旋转成柱面,再串成三维栅格映像图,它与真正栅格非常相似。一个切片能以有效、紧凑的方式被使用,还可被重复利用。在每个切片中,可根据传播轴的半径长度,对单元进行分类,依据的是切片上实际数据的最大半径。与圆柱形不同的典型锥形证据才需要全部充满。以此想法为基础,研制的程序效率要比预期的高40倍。将程序转化成机器码的高级编译器,又会给我们带来意想不到的快速性。将优化“Gnu C”设置为3级,代码速度能提高2.5倍。所有这些结合到一块,程序要比期望的快100倍。1992年我用的工作站计算速度是25 MIPS,还有一个2.5的快速因子。同样重要的一点是,工作站的存储空间大约为16兆字节,完全能存储整个三维栅格和它的辅助结构。在生产超级计算机的公司经历了八个月的准备工作之后,我不再需要超级计算机了!
在25 MIPS机器上,处理每边有128个单元立体栅格时,程序每秒需增加200次类似声纳的度量,或4000次弱射线,这样可以再现激光或立体视觉度量值。即使不适合机器人工作,这些对开发实验已足够了。

  1992年的休假使我意想不到地得到的三维栅格程实用性的内核,但并不是整个机器人感觉系统。基础性研究及其他的一些工作使我花了几年的时间,才向前迈了一步。对于有上百万个证据单元的高分辨率三维栅格来说,声纳每分钟只提供几百次模糊度量,并不是很有希望的检测手段。在其他一些机器人方案中,普遍使用激光扫描确定范围,以提供必要的数据。但缺点是昂贵、庞大、笨重且动力不足。我猜想我们的这些方法将会研制出体积更小、价格更便宜能批量生产的机器人,所以我们一直在寻找更实用的东西。电视摄像机尺寸减小到手指那么大,所以立体视觉的前景就更为乐观。

  广角镜覆盖面很广,但它产生明显的“鱼眼”失真。到了1995年,我才编写了克服此不足的程序。程序通过摄像机视察几百个黑点的校准模型,得到一个“纠正”函数,将原始图像校正为一个理想的几何图。在上次的休闲性作客中我收获很大,所以我于1996年接受了另一次作客机会,这次是在德国柏林的戴姆勒-奔驰研究中心。

  我在柏林使用的工作站配置是100 MIPS和64兆字节。这次我用了类似二十年前的斯坦福卡特车方案,但有许多细微差别。我编写了三维栅格正面底端立体加工程序。程序的输入来自于手动三角架上两个并行摄像机(虽然隔壁有机器人,但并不能运用我的程序)。与过去仅提取几十个特征量相比,新程序提取大约2500个左右。每个新发现的特征量,至少被转化成两个证据对特征定位。256*256*64单元的栅格表示6米长、6米宽、2米高的体积。

 

图2.6 1979年和1997年,立体图像的三维映像

  这两个例子中,约40幅类似上半部分的图片被立体处理,从而得出下面的对应的映像图。左边图显示的是斯坦福卡特车行走起始点附近的场景,包括摄像视野、规划的路径,以及经过一致性检查后的透视观测特征量。每个特征量通过斜线与地上黑点相连,斜线长度表示特征量的高度。在图片上,特征量仍用覆盖图像的黑点标明。为利于理解,根据被拍物体方位,手工标明一些特征量。右下图是256*256*64单元的栅格透视图,表示出右上图中6米长、6米宽、2米高的办公室。为了形象化,手工选择了大约12个盒子状单元,用明显的色彩“照亮”。

  随着栅格的更新,立体刻度有效地变化,程序能在五秒左右处理两幅图像,并给栅格增加5000个证据。
  
  下面将结果和卡特车做对比。每个映像图来源于摄像机拍的40张独立场景图。卡特车图需要在1 MIPS速度、1/2兆字节的机器上计算约40分钟,而栅格需要在100 MIPS、20兆字节的机器上运算80秒。卡特图标明大约50个特征量的位置,而栅格方法中大约10万个单元被占据(150万个单元空着,250万个单元未知)。卡特车几乎不能用于导航,栅格映像图不仅支持高可靠性的导航,而且还可识别物体的三维形状。

  三维栅格的结果确实令人鼓舞,正如我所希望的那样,但仍有许多提高的方法。对单独度量证据模式学习的研究,有方法可以极大地提高二维声纳映像图。目前,这些模式是根据立体图像几何学和许多猜测得到的。如何指导学习过程呢?在二维图像学习过程中,将计算出的栅格映像图与手工的理想映像图比较后进行评价。三维栅格单元数的巨增,使得建立理想映像图的想法不切合实际。尽管我们没有理想的三维模型,但我们有很好的关于原始立体映像的三维场景照片!通过对图像相应位置的透视,可以察看到栅格中被占据的单元,并能对它们进行比较。若栅格单元有相应于图像的颜色,则匹配较好,栅格的效果也就越好。其实,将图像颜色投影到栅格单元的着色法能取代先前的匹配法。这种着色匹配方法,不仅使栅格程序在任何时候可以调整自身,而且能够增强物体识别和其他操作。

  现在,这项工作仍在进行。研究生马丁正在用三维栅格的方法,对计算能力即将升级为500 MIPS的机器人进行实验。我们希望近期能够实现有实际意义的机器人行走,类似第四章所描述的能闲逛的真空清洁机器人。

  约翰.麦卡锡的自驾驶汽车进展如何呢?我们实验室的机器人又慢又小,即使很完美,若将其用于真正的街道上,出事故的后果可想而知。目前很少有机器能满足麦卡锡的要求。

快速汽车

  20世纪70年代,能装入汽车的微型计算机开始出现,随后十年里出现了一些计算机驾驶的客车和卡车。与小型机器人一样,直到20世纪90年代它们的效果都不是太好。

  1977年,日本的机械工程实验室研制了一辆以立体视觉导航的自动汽车,它能在状总良好的路面上以最快30公里/时的速度行驶约50米。秘密在于置于车内乘客边架子上的高度专用硬件,信号来自汽车栅栏侧面的上下叠放的两个电视摄像机。摄像机的图像信号经电子过滤,用来检测亮度变化,然后以数字脉冲形式记录。简单的数字电路,就可以将两个摄像机所得到的脉冲流与旁边的位移相匹配,许多匹配脉冲的位移指示出一定距离的物体。将光亮和对比度进行适当校准后,大约50 MIPS计算能力的专用电路,每秒给出30次约八个主要视觉点的距离,类似道路筑堤和障碍等。1/4 MIPS微型计算机每秒采样10次,保证汽车在路面上的行驶,并使汽车能躲避障碍。如果很精确地校准边缘检测器,道路和障碍物的边界对比十分明显(实验的路面通常以白色界定),那么系统效果将很好。而在不满足这些条件的另一些场合中,情况就不可预测,并且很危险。这种方法的致命弱点也正在此,所以1981年这项方案就终止了。

  1984年,国防部高级研究计划署(DARPA)8开始了雄心勃勃的“自治陆地车辆”(ALV)的研制。这是“战略计算主动权”计划的一部分。它的目标是研制可以进行战地侦察、破坏甚至能打仗的行踪隐蔽的爬行机器人。头十年中,计算机视觉的缓慢进展使 DARPA的决策者们认为,实时性对机器人来说是个很困难的问题,但他们猜想其他的感知和导航问题是易于处理的。此计划在1989年放弃之前,已资助研制了六小两大共八个实验视觉导航车。丹佛的马丁—玛丽埃塔公司制造了与公共汽车一样大的粗糙地形车,装备了50 MIPS计算速度的专用机、彩色电视摄像机、激光扫描范围测定器,采用光电工作原理,1秒钟提供两次有关距离量测的信息。卡内基.梅隆大学研制了类似的机器,彻底改装了大型狩猎车。整项计划结束之前,马丁-玛丽埃塔的ALV和卡内基.梅隆大学的Navlab都能以20公里/时的速度沿着泥泞的路面行驶,但速度很慢,它们通过彩色电视图像跟踪道路边界,即使是在激光数据所确定的最小障碍物前,它们都要停下来。如果道路边界明显且道路没有大的断续处,它们是可以行驶的。但在真正的路面上,它们不可能行驶上1公里。

  1984年在慕尼黑的一所大学开始了一项计划,部分经费来源于德国汽车业和电子业的一些公司,1989年可以在高速公路上以高达100公里/时速度行驶的大蓬车被研制出来了。12个完成特定功能的计算机一块进行电视图像处理来导航,运算速度为10 MIPS的单机能以每秒13帧的速度跟踪一个图像。特征量在自动行驶之前人为选定,比如在公路或车道左右各设一个典型标志,在交通牌照上,或行驶前方明显的标记处。应用移动预测技术,图像处理器可能长时间地保持视觉固定。图像处理器的输出作为微型计算机的输入信息,从而控制汽车在车道上行驶,以使它和其他交通物保持安全距离。1989年,该车在封闭的高速公路上行驶了20公里。

  上述系统严重依赖于能操作手动按钮的人类视导员。这些车辆很容易被一些常规性的驾驶事件所迷惑,如道路的阴影、路面的污物、路旁的灯柱、停下的汽车、急转的路面等。

  卡内基.梅隆大学的Navlab计划比ALV方案持续的时间更长。因为移动机器人实验室受到汽车业、农业、采矿业和政府的资助,研究生查克.索普就将其应用扩展到道路、农田、采矿等更广的领域中。他于1984年获得博士学位。

图2.7 卡内基.梅隆大学的自动驾驶车Navlab

  图中,从左到右编号1到5,是1986到1996年研制的系列产品。行驶速度从1米/秒到150公里/时,行驶距离从10米到5000公里,计算速度从1 MIPS到100 MIPS,计算机体积规模由冰箱大小变为膝上型。

  在1984年,Navlab的上一代叫Terragator,是桌子那么大的户外机器人,由室内1 MIPS的计算机无线控制,以每秒1米的速度沿着小路爬行。偶尔,它会认树干为道路而尽力往上爬!尽管Navlab速度上没多大提高,但还是于1986年代替了Terragator。Navlab是辆蓝色的大卡车,前后架子上充满1 MIPS的计算机、空调、发电机。为了能控制低速,最初的驱动为液压装置所取代。从彩色图片中分辨出前面道路边界的手工程序,会引起常规的潜在性错误,系统性能提高缓慢。1988年,这个大篷车能以每小时几公里的速度行驶在无任何物体的道路上。1990年,计算机速度提高到10 MIPS,这使它有时能达到液压装置允许的最高速度40公里/时。可是每遇到新的道路时,程序几乎都需要修补。

  1990年,Navlab-2代替了Navlab,它是一辆改装的部队救护车,有三个20 MIPS的工作站。查克.索普的学生迪安.波梅莱奥(Dean Pomerleau)用一种新方法进行了实验。波梅莱奥的“ALVINN”程序训练了一个模拟的神经网络,取代了过去的手工编制程序进行路面探测,该网络有5000个可调节的连接参数,能模仿人类驾驶员。神经网络输入的是低分辨率路面图像,并经过蓝绿相减的预处理。网络的输出决定车轮的方位。在最初的程序版本中,将模拟场景和道路行驶的录像带提供给网络,网络学习得需几小时。不断更新的训练策略在逐渐缩短时间。最初的每幅图像被扩展成几十幅。模拟车辆在车道的左面或右面时,经过相应的校正可以驾驶,程序会给出正常操作范围之外的操作经验。当在道路外面增加随机的杂乱物时,训练网络会忽略这些区域的东西。直到最后,学习新路面的时间减少到约5分钟。对于长途行驶,系统提供了用于许多路面类型连接的神经元权系数。1991年,ALVINN以70公里/时的速度在繁忙的高速公路上行驶了30公里。波梅莱奥因此获得了博士学位。

  1995年,另一代Navlab、另一个学生、另一种思路将这方面的工作向前推进了一大步。它是Navlab-5(Navlab-3、4没有大的突破)——普利茅斯微型车。50 MIPS膝上型计算机取代了拥挤的设备。摄像机也不很显眼地装在车顶上,而是从后面观测镜中窥视挡风玻璃外面的情形。做这次实验的学生叫托德.约赫姆(Todd Jochem),波梅莱奥的研究生。他的思路是用大量设计好的训练数据来实施控制,将它们嵌入已知限定条件的专用系统中,只对系统中改变的部分进行学习,用这种方法代替ALVINN的通用学习方法。和ALVINN一样,“RALPH”也是从32*32象素的低分辨率道路图像开始。车前面的路面,在图像中随着延伸逐渐变细,像一个锲形物。RALPH把图像扭曲,将锲形图拉直成带形图,然后将带形图均分到单独的32象素矢量中,代表道路的平均交叉区段。当然,只有在道路沿直线延伸的前提下,这才是正确的。如果道路左拐或右拐或是曲线,上述伸展和平均的处理方法会使不同部分混成一块,从而模糊起来。于是,程序尽力转换,再现角度和曲线的范围。对于每个假设,程序根据从一个单元到下一个单元亮度变化的结果矢量,来估计模糊程度。最明显的矢量被保留,其余的被舍弃。为了解道路类型,对32个数字的矢量可实时记录(这可与ALVINN的5000个参数学习超过5分钟对比)。自动驾驶过程中,当前的矢量与存储量相比,它们最匹配的地方表明车辆在车道上的位置。在一个新路面上,将当前矢量与矢量库中上千个相比较,以寻找最合适的。PALPH通过把从图像下半部得出的矢量与从上半部得出的矢量相比较,训练自己适应新道路。如果它们匹配,向前的道路与当前是一致的。如果不匹配,上半部是新路面类型,可以被当能见度接近零时,它会用雷达跟踪微弱的或短暂的特征量。1995年夏天,RALPH驱动Navlab-5从华盛顿驶到圣地亚哥,控制了98.2%的时间,平均速度超过100公里/时。1996年,约赫姆获得博士学位。

  以后的学生正把这项工作应用在“未来高速公路”和“驾驶员副手”等领域。

黑暗中求索

  计算机价格很高的时候,计算机控制的机器人人数极少。在20世纪80年代,体积小、价格便宜的微处理器给机器人领域带来了活力。似乎有了机器人领域要重复20世纪70年代后期计算机行业繁荣的迹象。世界上数以千计的业余爱好者、大学生、研究生以及一些小公司、工业和政府部门的实验室,都争相购买或研制小型可编程的小车。汉斯凯特(Heathkit)卖了25000个“英雄”牌机器人,单价是2000美元。其他几个公司也销售了数以千计的游戏机器人。声纳设备、红外探测器、分数级的MIPS处理器等设备的价格决定了这些机器的预算不可能高,它们都依照编好的程序,对障碍物和有限几种状态做出简单反应。还有几十种大型、价格昂贵的机器人,它们都带有电视摄像机、激光范围测定器、计算能力的处理器。少数的还带有机械手。

  小型机器人的时代很快就过去了,移动机器人的繁荣期也在1990年前就结束了。由于种种原因,一些正在研制的重要方案被放弃了。有些机器人用声纳或光学范围检测器来建立周围环境的二维线形图,它们能在普通办公环境里缓慢行走。在杂乱的环境里或检测装置出错率很高的情况下,这种机器人会不知所措。一些计算机视觉研究单位对装备有摄像机的机器人进行算法研究,使用立体视觉和基于底纹的场景解释方法,但对外部世界的一瞥就要耗费机器人几十分钟甚至数小时。人们普遍认为,对获取外部图像而言,移动机器人是一种很昂贵且麻烦的方法。

  20世纪90年代,控制机器人的计算机速度超过10 MIPS时,移动机器人领域才从萧条中复苏。目前,在一些大学和研究单位里,有许多箱子样大的机器人在游荡。少数机器人可以游泳或用腿在地上爬行,当然也有些能在野外使用。卫星和惯性制导设备使这些机器人的视觉不断增强。在日常工作和生活中,它们并不常出现,但偶尔会参加些竞赛活动,然后被很多电视和杂志宣传。它们的整体性能年年都在提高。

  20世纪80年代后期,状态低迷的“基于模型”(或“基于图像”)机器人人面临着基本问题。在麻省理工学院,精力充沛且善于表演的罗德.布鲁克斯(Rod Brooks)声称,基于模型的方法不切合实际,并示范了如何从没有模型的机器人人获取复杂行为。布鲁克斯的机器被巧妙设计的多反射层或行为集所控制,类似格雷.沃尔特的小乌龟或霍普金斯野兽,但更为复杂些。在行为集中,一种元素可能使机器人避开障碍,而根据检测,另一种元素或许使机器人沿墙行走。有些元素对另一些元素有所响应或无视它们。每个元素其实是适度分享处理器的简单程序,典型地,可以处理许多行为元素的机器人也许有1 MIPS的运算能力。自然界中的昆虫似乎被这种方式所控制,每个动作都由几百个神经元的神经节产生。布鲁克斯的机器人动作很像昆虫,当他的实验室开始研制六条腿行走的微型机器人时更说明了这点。它们比大部分基于模型的机器人更为逼真,更不可预测。但是新奇感过后,人们不得不承认,在完成复杂动作方面,基于行为的机器人可靠性并不比集成多控制器的机器人要好。自然界中昆虫的生存就说明了此问题。多数昆虫都要遭厄运,不能顺利结束生命周期。例如,由于灯光或认识的限制,蛾常被诱捕。只有大量产卵才能保证子孙繁衍。

  20世纪90年代,基于模型的机器人可以在室内行驶,也可穿越乡村。它们含有一些反射行为集的元素,用于避开障碍和处理险情。也许受此影响,布鲁克斯研制了机器人“Cog”.它被大量可学习的反射行为所控制。迄今为止,它可以通过学习来用视觉跟踪物体,并抓获物体。与我们人类的神经系统很相似,但我认为它的模仿是低层次的。需要足够运算时间的Cog,其方法思路也许有助于追溯人类的进化和发展,或许可以导致全智能机器。虽然如此,我认为模仿高层的抽象性是更快的一条途径,直接可以借鉴有用的计算机科学和工程的成果。第四章中会介绍这方面的情况。

  然而,大部分实用自动机必然是按基于行为的思路而研制的。尽管对可预测性的设计必然会降低逼真度,但用电线连接的机电继电器很像简单昆虫的神经节,五十年来,它们一直用于控制自动电梯和工业机器。从20世纪80年代开始,微处理器。系统复杂性在慢慢增大,但大部分控制器仍以简单的方式对刺激产生反应。

挑战性工作

  20世纪80年代初,机器人研究不仅吸引着大量爱好者,而且一些公司也参与进来,希望推出像人一样的由微处理器控制的移动机器人人,以用于公共场所。它们将比自动导航车(AGVs)体积小、价格便宜、行动敏捷、使用更广,而自动导航车从20世纪50年代开始就已在工厂中用于搬运物资。老式车辆的花费大约是10万美元,受埋在地里的信号发射线指挥,起停由触摸开关和定时器控制。20世纪70年代晚期,出现了计算机控制的自动导航车,由路面上的交通线和明显的路标导航。

  研制新型移动机器人的目的是,希望达到与计算机控制的电气臂一样先进的程度。威克.沙因曼最初设计了电气操作臂,具有实用性、编程灵活性、传感引导特点。20世纪70年代初期,威克.沙因曼仅是斯坦福大学人工智能实验室“手一眼计划机械工程部的一名研究生。他研制的这些设备很快就商业化了,于20世纪70年代末被用于汽车和电子工业的精确集成。尽管它们在技术上的多样性、快速性、敏感性、精确性等方面已影响深远,但它们仍然在商海中挣扎。对大多数工作来说,机器人比人工劳力的费用高、效果差,高级机器人在商业上仅占很小的一部分,并且无利可图。日本的情况显然有些例外,制造业由于人口老龄化,出现了劳动力短缺,于是就购买了许多机器人使它们适应将来技术要求。

  在制作和销售方面,移动机器人面临着与电气臂同样的困难。20世纪80年代几十个小公司以及大公司中的一些部门曾经营过机器人,但仅仅几年后就销声匿迹了。如今仍有些公司在此领域徘徊,他们期望着大气候会有所好转。康涅狄格的变迁研究公司(TRC)和弗吉尼亚的太空移动公司,希望有朝一日能造出上百万个机器人。但十多年来,他们一直靠对产品适度提价而生存,每年卖出十几个机器人给科研单位,单价是2.5万美元.每个公司都已能售出约100个在实际中使用的机器人。TRC的机器人可在医院中往返送餐,太空移动公司的机器人能在仓库巡逻保安。这些在1/2 MIPS的机器上实现,能适应普通的反射行为,如避开障碍、沿墙走、朝灯塔前进等,还能按要求的方式,徘徊在工作区附近。这些实用机器人面临的最大问题是,如何进一步提高可靠性和实用性。成功的机器人可以在指定线路上工作好几年。而1992年在斯坦福医院,做测试的TRC卡特车连续工作一个月后竟然迷失了方向,当它对接收信号响应错误时,会显示出“无机器人活动区”的字样,然后沿楼梯井跳下!用现有的技术获取这种可靠性是相当麻烦的,并且花费很高。对走廊的每部分、每个转弯、每道门,程序都要充分考虑、调整和测试。在关键地方还得贴上特殊标记。

  机器人在每次变更工作路线时都需要专家,这使欲购买机器的顾客望而却步。尽管如此,这个领域仍然是很诱人的。如果机器人能很快适应行走路线,可靠工作,再加上能适应不利条件的话,那么机器人一定能广泛应用。已经证明,研制这种机器人比想象中要难得多,但它们已快被研制出来了。

  • 上一篇文章: 《机器人》第一章-逃逸速度

  • 下一篇文章: 《机器人》第三章-能力和显现
  • 发表评论   告诉好友   打印此文  关闭窗口
     最新5篇热点文章
     《机器人时代 谁将是主人?...
     《机器人时代生存宝典》-...
     大三学生突发奇想:学生创...
     机器人美女也能成为贤妻
     到底如何爬壁? 解析“恐爬...
     
     最新5篇推荐文章
     《机器人时代生存宝典》-...
     H6
     Gold Koi
     Coelacanth
     BN-17
     
     相 关 文 章

      网友评论:(只显示最新5条。评论内容只代表网友观点,与本站立场无关!)