家家都有 机器人
撰文 比尔·盖茨(Bill Gates)
翻译 郭凯声
我们站在时代的节点:一个崭新的产业即将崛起。若干开创性的新技术为这个产业的崛起奠定了基础;几家口碑颇佳的企业提供了极为专业的商品;一大批新公司迅速壮大,致力于制造新式玩具、为发烧友提供配件,还出售其他各种有趣的利基产品。然而,它也是一个高度分散、各自为政的行业,几乎没有统一的标准或平台。这个行业的开发项目复杂、进展缓慢,可投入实际应用的成果寥若晨星。实际上,尽管它的发展令人振奋,前途一片光明,但谁也说不准这个行业何时才能成长到临界质量,甚至连它是否会达到临界点都无人知晓。不过,只要能发展到临界点,它就可能会彻底改变这个世界。
毋庸置疑,人们可以用上面这段话来描述20世纪70年代中期的计算机行业,那时我和保罗·艾伦(Paul Allen)才刚刚创建微软公司。那个年代的大型计算机体型臃肿、造价高昂,通常是在大型公司、政府部门和其他各种机构中用于后台操作,支持日常运转。顶级大学和工业实验室研究人员正忙于打造基础组件,为信息时代的到来开辟道路。英特尔公司刚刚推出8080微处理器,而现代家庭电子游戏的鼻祖阿塔里公司(Atari)还在兜售风靡一时的乒乓球电子游戏Pong。发烧友自发组织了俱乐部,千方百计地想找出这项新技术究竟能做点什么。
不过,此刻我心里所想的并不是那些往事,而是现在机器人行业的发展——目前这个领域的状况与30年前的电脑行业极为相似。今天在汽车装配线上忙碌的一线机器人,正是当年大型计算机的翻版。而机器人行业的利基产品也同样种类繁多,比如协助医生进行外科手术的机械臂、在伊拉克和阿富汗战场上负责排除路边炸弹的侦察机器人、以及负责清扫地板的家用机器人。还有不少电子公司参照人、狗、恐龙的样子制造机器人玩具,而发烧友们都迫切希望能弄到一套最新版的乐高(LEGO)机器人套件。
与此同时,一群堪称全世界最聪明的人正设法解决机器人技术中最让人头疼的问题,比如视觉识别、导航及机器学习。现在看来胜利在望。2004年,美国国防部高级研究项目局(DARPA)主办了首届机器车挑战大赛(Grand Challenge)。比赛在莫哈维沙漠上展开,全程142英里(约合227千米),路程崎岖,看看谁能研制出第一辆能够跑完全程的无人驾驶机器车。那次大赛上表现最好的参赛车才跑出7.4英里就偃旗息鼓了。然而,2005年的挑战赛上,有5辆参赛车跑完全程,冠军的平均时速还达到l9.l英里(参见《环球科学》2006年2月号W·韦特·吉布斯所著《无人战车关键一步》一文)。在这方面,机器人行业与电脑行业也有惊人的相似之处:互联网的鼻祖Arpanet网当年也正是靠了高研局大把银子的资助,才能顺利“降生”。
机器人行业现今面临的挑战,也和30年前电脑行业遇到的问题如出一辙:机器人制造公司没有统一的操作系统软件,流行的应用程序很难在五花八门的装置上运行。机器人的处理器和其他硬件的标准化工作也未开始,在一台机器人上使用的编程代码,几乎不可能在另一台机器上发挥作用。如果有人想开发新的机器人,通常得从零开始。
虽然困难重重,但我跟涉足机器人技术的大学研究人员、实业家、发烧友,乃至高中生都谈到过这方面的话题,他们那种知难而进的激情和对未来的期许,令我不由回想起自己的经历。当年我和保罗·艾伦一边看着各种新技术相互融合,一边梦想着将来有一天,家家户户的书桌上都摆着电脑。现在,我看着多种技术发展的趋势开始汇为一股推动机器人技术前进的洪流,我完全能够想象,机器人将成为我们日常生活的一部分。我坚信,分布式计算、语音与视觉识别以及无线宽带网络等新技术,将为我们开启通向新一代自主式装置的大门,使电脑不仅能在虚拟世界里大显身手,还能代替我们执行现实世界中的各项任务。或许我们很快将跨进一个新时代,那时,电脑将走下办公桌,通过它,我们能够观看、倾听、触摸,甚至操纵那些我们难以亲自接触的东西。
距离梦想有多远
制造机器人的梦想已经延续了几千年,形形色色的机器人在科幻故事里大行其道,不过现在的机器人连门和敞开的窗都很难区分开。
“机器人”(Robot)这个术语是1921年捷克剧作家卡雷尔·恰佩克(Carel Capek,l890年-l938年)首创的,很快就流行开来。不过,打造人形机器人的梦想,却已延续了数千年之久。早在古希腊古罗马的神话中,冶炼之神便开始用黄金打造机械仆人。公元1世纪,亚历山大的赫伦(Heron,传说这位杰出的工程师发明了第一台蒸汽机)设计出一些令人叹服的自动机器,据说其中一台还能说话。另一位科技奇才达·芬奇l495年的草稿中夹着一张制作机械骑士的草图,这位机器人骑士能坐能站,手脚还能活动。人们认为这应该是第一份人形机器人的设计图。
一个世纪以来,众多风靡一时的科幻作品——比如艾萨克·阿西莫夫的小说《我,机器人》(I,robot,又名《机械公敌》)、电影《星球大战》以及电视剧《星际迷航》等陆续登场,使机器人成了大众文化中司空见惯的角色。机器人在科幻世界中如此大行其道,表明公众也认同,有朝一日机器人将会融入我们的日常生活,成为我们的忠实助手乃至亲密伴侣。然而,尽管目前机器人在汽车制造等行业中已成为关键角色(这些行业中,机器人与工人的数量比达到l∶l0左右),但想要达到科幻作品中的水平,还有很长的路要走。
要想让电脑和机器人感知周围的情况,并作出迅速准确的反应,难度之大远远超乎人们的预期,这成了科幻与现实之间存在巨大差异的原因之一。事实证明,许多本领在人看来或许只是小菜一碟(比如根据房间里其他东西的位置调整自己的方位,对声音作出反应并解读别人的谈话,抓住大小不同、质地各异、各种各样的东西等),对机器人来说却难于登天——它们甚至分不清打开的门和窗有何不同。
不过,研究人员已经逐渐摸索出解决办法。拥有超强处理能力的电脑日益普及,将为研究者排忧解难。20世纪70年代,一兆赫处理能力的成本超过7,000美元,今天却只值几美分;一兆比特的存储容量,也经历了类似的价格暴跌。有了如此廉价的计算和存储能力,科学家就能动用大量电脑资源,踢走那些阻碍机器人进入现实世界的绊脚石。例如,语音识别程序已经能相当有把握地辨别单词,但如何根据上下文悟出这些单词的含义要难得多。可以预见,随着电脑计算能力的持续提升,机器人设计师将借助越来越强的处理工具,轻松解决更为复杂的问题。
开发机器人的另一个障碍是硬件设备的成本过高,例如传感器、电机和伺服装置等都价值不菲(传感器的作用是收集环境信息,比如测定机器人距某一物体有多远,而电机和伺服器的功能则是以恰当的力度灵巧地摆弄物体),但目前这些器件的售价也在迅速下降。几年前,机器人上使用的精密激光测距仪价格高达1万美元左右,而现在仅花2,000美元即可买到。新推出的超宽带雷达测距传感器的精度将进一步提升,但售价却更为低廉。
现在,机器人设计师无须花费太多,就能为机器人配备全球定位系统芯片、摄像头、麦克风阵列(array microphone,从背景噪声中识别声音的能力优于传统麦克风)以及其他种种传感器。在电脑处理能力和存储容量突飞猛进的基础上,这些新加入的传感器件将使机器人如虎添翼。今天的机器人已经可以承担某些具有相当难度的工作,例如打扫房间、协助排除路边炸弹等,而在仅仅几年以前,市面上出售的机器人根本不可能完成这些任务。
BASIC路线续写辉煌
BASIC语言让个人电脑的研发和应用都变得简单易懂,最终引发了电脑进入普通家庭的浪潮,而机器人行业也必须找出帮助行业统一,引爆普及革命的关键要素。
2004年2月,我前往美国卡内基-梅隆大学、麻省理工学院、哈佛大学、康奈尔大学以及伊利诺伊大学等众多名牌大学发表演讲,阐述在解决当今社会某些最紧迫的问题时,电脑发挥了怎样的重大作用。我旨在引导学生们了解,这门科学多么激动人心、多么重要,希望借此鼓励他们中的一部分人投身技术研究。每到一所大学,发表演讲以后,我都有幸参观学校计算机系开展的某些最有意思的研究项目。这些大学向我介绍的研究课题中,至少有一个与机器人有关,几乎无一例外。
当时,我在微软的同事们也听说,学术界和商业机器人行业中的某些人士急于探听微软是否在进行机器人技术的研究,期望微软能为他们的开发项目助一臂之力。当时微软尚未涉足这个领域,我们决定进一步考察。我委派我的战略智囊团的成员,为微软工作了25年的坦迪·特罗尔(Tandy Trower)展开广泛的实地调查,遍访机器人行业的各路精英。我们发现,人们普遍看好机器人技术的发展前景,而且整个行业都迫切希望获得新的工具,简化他们的开发工作。坦迪在调查报告中指出:“许多人认为机器人行业的发展正处在技术转折点上;向个人电脑(PC)的体系架构过渡,已经越来越顺理成章。卡内基-梅隆大学参加DARPA机器车挑战赛的机器车队的领队雷德·惠特克(Red Whittaker)不久前提出,现在硬件的功能已经基本合乎要求,问题是要找到合适的软件。”
回想PC发展的初期,当时我们意识到,要将PC的整个开拓性研究推入临界状态,把所有研究成果整合起来,打造出一个能够批量生产实用产品的行业,还需要一项要素。事实证明,我们需要的正是微软的BASIC语言。我们在20世纪70年代开发的这套程序设计语言为计算机行业奠定了统一的基础,有了BASIC语言,针对某套具体硬件开发的程序也可以在另一组硬件上运行了,电脑程序设计的工作轻松多了,吸引了越来越多的人投身计算机行业。为PC发展做出过实质性贡献的人数不胜数,但对软硬件的革新而言,微软的BASIC语言是关键的催化剂之一,而软硬件的革新最终使PC革命成为可能。
读完坦迪的报告,我豁然开朗:看来机器人行业也必须找出行业中那个尚未现身的关键要素,才能实现PC行业30年前所经历的脱胎换骨。因此,我要求坦迪着手组织一班人马,与机器人行业的精英们通力合作,打造一套必要工具,让任何一个对机器人感兴趣的玩家,哪怕只掌握了最基本的计算机编程知识,也能不费吹灰之力,编写出可以在不同类型硬件上运行的机器人应用程序。想考察一下我们能否为机器人开发者提供一套通用的初级基础工具,把各种软件、硬件整合进机器人的设计,就像当年微软BASIC语言为电脑编程者所做的一样。
坦迪的机器人攻关组相当幸运,因为微软公司首席研究与战略总监瑞格·蒙迪(Craig Mundie)麾下的一个研究小组已经开发出一系列先进技术,可供机器人攻关组选用。其中一项技术将帮助机器人设计师解决最棘手的一个问题:如何同时处理多个传感器发来的所有数据,然后向机器人的各个驱动装置发送正确的指令——也就是所谓的“并发”(concurrency)问题。常规的解决方案是编写一个传统的单线程串行处理程序,通过长长的一组循环指令,接收各传感器送来的全部数据并加以处理,最终得出机器人应采取何种行动的决定,输出信息,然后整个循环又重新开始。这种模式的缺点显而易见:举例来说,如果你的机器人刚收到最新的传感数据,提醒它已经走到楼梯的边缘,而程序却仍然在计算机器人的行进路线,并根据先前收到的传感数据命令机器人加速前进,结果可想而知:机器人还没来得及处理刚收到的危险信号,就已跌下楼梯了。
“并发”这个难题还困扰着机器人之外的其他行业,目前为分布式计算机网络编写的应用程序日益增多,程序设计人员不得不绞尽脑汁,寻找一种有效的方法来协调同时在多台服务器上运行的代码。此外,装有多个处理器及多核处理器(multicore processor,如双核、四核处理器等,集成电路把两个或两个以上的处理器连接在一起,以增强性能)的电脑日渐取代单处理器电脑,软件设计人员需要一种新方法来编写桌面应用程序和操作系统。为了充分发挥并行处理的威力,新的软件必须解决并发问题。
终结这个问题的方案之一是编写多线程程序,这类程序可以沿着多条路径,同时处理大量数据。不过,任何一位曾经编写过多线程代码的程序开发人员都会告诉你,这是程序设计中最让人头疼的任务之一。因此,瑞格小组设计了另一种巧妙的工具——“并发处理与协调运行”(Concurrency and Coordination Runtime,CCR)。CCR是一个函数库,其中每个函数都是一组执行某项专门任务的软件代码。借助CCR,程序设计人员可以轻松快捷地编写多线程应用程序,协调一系列同时进行的过程。CCR的设计意图是协助程序设计人员充分利用多核与多处理器系统的能力,事实证明,它也是机器人技术的理想工具。比如说,有时候会出现这样的状况:机器人软件忙于向轮子发送输出命令,无暇处理传感器发来的输入信息,结果导致机器人一头撞在墙上。如果机器人设计师借助CCR函数库编写程序,就能在很大程度上避免这样顾此失彼的事故。
除了解决并发问题以外,瑞格小组还获得了另一项成果:通过所谓的“分布式软件服务”技术(Decentralized Software Services,DSS),简化了分布式机器人应用程序的编写工作。借助DSS编写的应用程序所提供的各项服务(即应用程序中执行具体功能,比如接受传感器输入或控制电机的组件)是各自独立运行的,但程序可以对它们进行协调,类似于互联网把来自不同服务器的文本、图片和信息等整合显示在一个网页上。有了DSS,软件的各个组成部分就可以彼此独立运行,万一机器人的某一部分出了问题,也可以单独关闭并重启这一部分(或者干脆把它替换掉),无须重启整个机器人。把这种软件架构同宽带无线技术结合,便能利用网络浏览器对机器人进行远程监控和调节了。
DSS的优势还不止于此。控制机器人运行的DSS应用程序不一定要完全安装在机器人身上,可以分布于多台电脑中。机器人可以把一些棘手的运算工作交给家用PC上的高性能硬件,从而大大降低机器人本身的成本。我坚信这方面的进展将为一类全新机器人的诞生铺平道路:这些机器人实质上就是台式PC的外设,它们可以到处走动,并借助无线通信与PC交流,利用PC的强大功能应对诸如视觉识别、导航之类需要强大处理能力的挑战。这些装置可以通过网络相互联系,将来我们或许会看到这样的场面:成群结队的机器人协同工作,执行绘制海底地形图或种植作物等任务。
这些技术是坦迪小组开发的新型软件开发工具包——Microsoft Robotics Studio(微软机器人作坊)的关键部分,当然工具包里还有其他工具。借助这些工具,我们可以通过多种编程语言轻松编写应用程序。例如,运用模拟工具,机器人设计师就可以在正式试用之前,在三维虚拟环境中检验他们编写的应用程序。我们发布这个工具包,旨在打造一个廉价的开放平台,让机器人开发者能够轻而易举地把软件和硬件整合到机器人的设计中。
改变时代
机器人将成为由PC控制的外接设备。它们的样子也许会离我们的科幻故事越来越远,但样子并不重要,重要的是,它带给我们的改变丝毫不逊于PC过去30年来的影响。
机器人融入我们日常生活的步伐有多快?据国际机器人联盟调查,2004年,全球个人机器人约有200万台,到2008年,还将有700万台机器人投入运行。按照韩国信息通信部的计划,到2013年,韩国每个家庭都能拥有一台机器人;而日本机器人协会预测,到2025年,全球机器人产业的“蛋糕”将达到每年500亿美元的规模(现在仅有50亿美元)。
与20世纪70年代PC行业的情况相仿,我们不可能准确预测出究竟哪些用途将推动这个新兴行业进入临界状态。不过看起来,机器人很可能在护理和陪伴老年人的工作上大展宏图,或许还可以帮助残疾人四处走走,并增强士兵、建筑工人和医护人员的体力与耐力。机器人可以检修危险的工业设备,处理各种危险物品,巡查偏远地区的输油管道,还能协助医生诊断并治疗远在数千里之外的病人,而在保安系统及搜救行动中,机器人更是义不容辞地充当起关键角色。
未来也会有不少机器人看起来酷似《星球大战》中的人形金属怪物,但绝大多数机器人的外貌肯定将与C-3PO(《星球大战》中那个多愁善感的人形机器人)迥然不同。实际上,随着移动式外设的日益普及,我们可能越来越说不清到底什么才是机器人。这些机器人的功能高度专业化,深入千家万户,但外貌却跟科幻作品中那些两足拟人机器大相径庭,说不定我们不会再把它们叫做机器人。不过,名字并不重要,重要的是,随着这些装置的价格逐渐降低,达到普通消费者能够承受的水平,它们极有可能使人类社会生活的方方面面——包括工作、交流、学习及娱乐等,发生翻天覆地的变化,影响之深远丝毫不逊于过去30年间个人电脑给我们带来的改变。
请 登录 发表评论