在过去的40年里,大多数IT研究界都专注于交互式计算,J.C.R. Licklider关于人机共生的强大而以人为中心的观点[3.].与这项研究相伴随的是IT产业的诞生,它正朝着人/机器/网络的突破点飞速前进,在这个突破点上,联网的交互式计算机的数量将超过地球上的人口数量。
在实现利克莱德的愿景之前,我们还有很长的路要走,从人均渗透率扩展到世界大部分地区还需要很多年。然而,“失去科学”可能不再是限制实现这些长期目标的因素。有理由认为,对现有科学基础的改进将足以推动这些努力向前发展,尽管这可能是异端邪说。
是时候改变了。计算机科学研究社区现在享有一个难得的和令人兴奋的机会来重新定义其议程,并建立新的目标,将推动社会超越交互式计算和人/机器的断点。在展望一个联网计算机的数量比人类多一百倍或一千倍的世界时,我们应该考虑这些“多余”的计算机将做什么,并制定一个研究议程,从而提高人类的生产力和生活质量。
虽然我不像利克利德尔那样清楚地知道未来40年的计算会带来什么,但我相信,迈向新议程的第一步必须包括:从根本上重新审视物理世界和虚拟世界之间的边界;应用计算的时间常数的变化;以及从以人为中心到由人监督(甚至无监督)的计算的转变。虽然在这些领域中的每一个领域都已经做了一些工作,但是对这些领域集中更多的注意力将会产生一种新的运作方式,我将其称为积极主动的计算。
在这篇文章中,我描述了新研究活动的三个位点:
物理。主动系统将与它们周围的世界紧密相连,使用传感器和驱动器来监测和塑造它们的物理环境。对“实体化”的研究探索了网络系统与环境的普遍耦合。
得到真实的。主动的计算机对外界刺激的反应速度会比人类更快。这一领域的研究必须弥合控制理论和计算机科学之间的鸿沟。
走出。交互式计算有意将人类置于循环之中。然而,不断缩小的时间常数和纯粹的数字要求研究人类所处的主动操作模式以上循环。
有两个简单的原因,为什么我们应该将我们的一些智力资源转向主动计算:绝大多数新计算机将是主动的,这些节点将是信息的主要来源和吸收点。
IT行业目前主要集中在办公自动化、电子商务和相关的网络上。根据我们目前的研究情况,一个独立的观察者可能会认为,新计算机的分布是由1.5亿台左右的新笔记本电脑、桌面电脑和服务器节点主导的,这些节点将推动交互计算的增长。
尽管创建一个每年消耗如此大量计算机的行业是一项巨大的成就,但这些数字与今年将在全球部署的80亿个或更多计算节点相比就相形见绌了。所示图1和图2,这些设备中的绝大多数将被嵌入到其他物体中。他们将与周围的环境直接接触,而不是与人类直接接触,从而监测和塑造周围的物理现象。
由于这些嵌入式设备的增长速度超过了它们的交互式同类设备,计算机科学研究社区别无选择,只能跟随处理器,并在这一领域投入更大比例的智力资本。在这样做的过程中,我们也将跟随数据,从信息来源主要以人类为中介的环境,转移到计算机直接挖掘与周围世界相关的大量基础信息来源的环境。事实上,拥有比人更多的设备,并让它们分布而不是放置在玻璃房间里的根本原因,是它们与物理世界的亲密联系,以及它们提供的增量信息来源和汇。
到目前为止,互联网部署的重点是广度,将网络的地理范围扩大到“每个办公室和每个家庭”的节点。尽管互联网的这种扩展将以令人印象深刻的速度继续下去,但通过深入到每个地理位置的所有嵌入式设备,节点的数量可以额外增加50倍。
这种向深度网络化系统的转变代表了一个深刻的拐点,由于其巨大的规模和系统影响,它需要我们的关注。从历史上看,由于缺乏网络连接,嵌入式处理器获取的数据被搁浅,并导致受制于一次性可编程性的僵化的软件制度。然而,各种各样的努力正在开始解锁由大量传感器导出的信息,并提供远程访问它们的驱动器(见本期Pottie和Kaiser的“无线集成网络传感器”)。
这和无处不在的计算?在他1991年的文章中[8施乐帕洛阿尔托研究中心(Xerox Palo Alto Research Center)的首席技术专家马克·威瑟(Mark Weiser)预测,计算将变得无处不在,人们将不再意识到它的每一个应用,而是像伸手去拿电灯开关一样频繁地、条件反射式地使用它。所示图3在美国,无处不在的计算空间可以分为两个维度,一个与应用程序以办公室为中心的程度有关,另一个与计算节点及其接口的重点是与人类交互,而不是与其环境的其他部分交互的程度有关。
尽管威瑟的观点相当广泛,但很少有研究人员打破我们对人际互动的传统强调。相反,大多数研究都局限于图的左下象限。主动计算代表了探索无处不在计算的右上角象限和扩展我们的知识视野超越互动领域的议程。简而言之,现在是研究人员宣布办公自动化胜利的时候了。
诺贝尔奖得主、卡耐基梅隆大学教授赫伯特·西蒙很久以前就发现了连接物理和虚拟领域的重要性[6].然而,这个问题在很大程度上被主流人工智能和计算机科学界忽视了。1尽管我们在创建虚拟环境和探索有限的界面技术(如语音和图形)方面做了非常出色的工作,但界面研究以人为中心的程度可能使我们对交互计算之外的许多机会视而不见。
我们面临的挑战是开发一种机制,让我们在开发虚拟世界时所利用的软件属性尽可能地接近物理环境,直到接触到物理世界的转换器和传感器。朝着这个方向努力的一个例子是SpectrumWare项目[7该研究将无线电频谱的宽频带样本全部丢进存储器,这样传统的无线电功能,例如解调,就可以由用户模式应用软件来完成。让程序员可以访问大范围的频谱为新的算法方法和波形打开了大门,这些可能在传统的数字信号处理(DSP)环境中没有被考虑。
以下段落阐述了一些与物理化相关的节点级挑战和机遇:
传感器和执行器。主动节点的一个显著特点是它们将配备传感器和/或执行器。最近在微机电系统(MEMS)方面的工作已经导致了这一领域的大量创新,我们可以合理地假设,在未来十年中将出现大量小型和廉价的传感器。虽然执行器的进展比较缓慢,但MEMS可能会导致继液压和鼠笼电机之后执行器技术的首次突破。
便宜的网络连接。另一个挑战是集成网络连接,这种连接按照目前的标准是廉价的,并且适合在绝大多数网络流量与节点的样本处理功能直接相关的环境中运行。其中,上层协议栈和操作系统接口需要与内存子系统协调,以支持“分组化”采样数据的高效交换。还需要考虑网络连接的总成本,包括共享基础设施(如基站)的每个节点的成本。为了使网络成本与嵌入式计算市场每台设备1美元的价格结构保持一致,需要进行根本性的创新。
当界面被用来监督成千上万的计算机和/或数百万的智能机器人时,情况有何不同?
Sample-friendly微体系结构。计算机科学的进步常常来自于找到新的方法来交换多余的计算能力以获得新的功能。然而,嵌入式计算的实践者正在把他们的创造性精力投入到试图将功能嵌入到计算节点中,这些节点以现代交互式计算机的标准来看是极其原始的。2虽然dsp的处理能力比微控制器大得多,但它们呈现的是一种同步的、僵化的编程模型,与主流程序员所享受的编程模型相比,这种模型是贫乏的,而且相去甚远。
处理器和编译器设计者的另一种选择是创造过剩的资源,这将激发创造性的系统设计。主动计算将利用新的架构,简化处理在单个节点获得的信息。例如,人们可以想象一种统一的方法,在这种方法中,各种形式的采样信息被自动打包、打上时间戳并在获取时进行缓冲,允许它们的后续处理相对于正在监视的外部进程异步进行。类似地,发送给执行器的带时间戳的样本流可以被自动锁定到数字-模拟转换器,从而在系统边缘重新构成信号定时,无需程序员干预。例如,伯克利智能RAM努力开发内存中的处理器技术,可以为样本处理环境奠定基础,在这种环境中,进入的样本被直接写入内存阵列,用于突发软件进程的高带宽消耗[5].在相反的方向上,时间切片过程可能会以比实时更快的速度产生输出样本爆发,因为知道它们将以适当的速率呈现在物理世界中。
操作系统的影响。对示例友好的处理器架构将使大部分(如果不是全部的话)应用程序软件暂时与物理世界解耦,使程序员能够享受主流软件环境的许多优点。例如,在比实时更快的突发中运行的软件进程可以利用传统机制,例如多任务处理和统计方法,这些方法的瞬时处理需求依赖于数据。这种解耦意味着需要操作系统机制来“虚拟化”传入和传出样本流,并使它们对用户模式应用程序软件可用。3.自20世纪80年代早期添加图形和网络支持以来,添加样本处理接口可能代表了操作系统功能(相对于性能优化)创新的第一个重大机会。
利用大量计算机(其中许多嵌入在基础设施中,如道路、建筑和交通系统),将需要新的系统和网络技术来聚合和共享它们的能力。
美国国防高级研究计划局(DARPA)的传感器信息技术项目提供了一些适合研究的新方向的特定领域实例。传统的传感器网络是专门针对单一应用和分层组织的。然而,主动传感器网络可能基于非常不同的概念,包括:
传感器多路复用。传感器可以被视为提供基于网络的服务,授权用户可以浏览,而不是将节点专门用于特定的用户和应用程序。由于每个传感器之间的带宽是有限的,扩展到大量的潜在用户很可能依赖于智能多播技术,例如南加州大学的Deborah Estrin和其他人正在研究的技术(netweb.usc.edu/SCADDS/)。
反向和对等的任务。现在的传感器工作在主从环境中,由上级机构“下达任务”。然而,未来的设计可能会利用移动代码来颠覆传统的层次结构。例如,一个观察到感兴趣事件的传感器可能会向网络启动一个applet,从而改变其对等节点的任务,甚至改变其在传统层次结构中的上级服务器节点的任务。
实时观测的查询和融合。由于个人用户将能够利用许多不同类型的大量传感器,并且由于这些传感器的功能、配置和位置将是动态的,关系查询可能是传统传感器任务的可行替代方案。例如,用户可以向他或她的环境提出一个类似sql的查询,让查询自动分解为子查询,然后路由到网络中的适当节点,并在返回时融合响应。在实践中,分解和融合操作很可能是基于网络的,利用活跃的网络[9和相关技术,例如故意命名[1]、地理寻址和铸造。
样本来源。出于安全、法律和科学的目的,主动系统开发和保留证据链至关重要,这些证据链可用于令人信服地跟踪采样信息,通过任何融合和处理机制回溯到信息获取的初始点。
尽管这些传感器网络活动相当新颖,但它们只是所需的新系统组织的冰山一角。
除了通过一个计算机一个人的断点,许多主动环境将通过一个重要的实时断点,以比人类更快的速度运行。这是交互计算的一个重大变化,在交互计算中,我们将系统锁定在与我们操作完全相同的频率上。
建造运行频率更高的系统本身并不新奇,事实上,像汽车防抱死制动系统这样的系统已经大量投入使用,并取得了令人惊讶的好结果。然而,比人类更快的系统将以越来越快的速度部署,这表明迫切需要为它们的原则性设计和分析奠定智力基础。
Software-enabled控制。当我们说一个主动系统比人类更快时,我们实际上是在说系统输入和输出之间的延迟比人类能承受的要短。然而,复杂性的真正提升是因为主动计算机将频繁地闭合一个反馈回路,也就是说,它们的执行器将影响被感知的环境。虽然多年来已经发展了大量关于控制系统的知识,但它主要是从机械和电气工程师的角度来构思的,以软件设计师的标准来看是相当保守的。(这种观点一点也不令人惊讶;计算机科学专业的学生很少被教授任何有关信息和控制理论的知识。)
如果每个控制间隔有数亿条指令,并且有足够的内存来支持数十亿的状态空间,那么应该有可能开发出软件友好的方法,从而提高系统的灵活性和性能。一个很有前途的研究方向是探索一种动态方法,在即时基础上创建上下文相关的控制系统。一个后台进程将参与在线控制状态机的潜在替代品的合成,并提供从一个状态机到另一个状态机的无缝控制转移。其他研究方向包括:比实时更快的模拟,在一系列可能的输入下预测被控系统的近期性能;以及行为不像现在那样被精确控制的系统。在后一种情况下,控制系统只确保在已知安全的总边界内操作,将系统的详细操作留给启发式和/或统计算法,它们的稳定性只有粗略的边界。
网络控制。很可能主动系统的控制元素将使用基于包的网络进行连接,因此提出了控制理论的另一个方面,应该重新审视。通常,通过分组网络的延迟是可变的,而通过传统控制环路的延迟是固定的。对于具有足够多的组件的系统,开发能够容忍组件可用性和连接性的统计变化的控制方案也很重要,这将引出关于分布式控制系统容错的新思路。
人们可以想象计算机科学的基础从确定性模型跃迁到概率模型,就像物理学从经典模型跃迁到量子力学那样。
在线测量和调优。尽管低延迟组件不是比人类计算更快的充分条件,但它们是必要条件。不幸的是,我们的许多硬件和软件在部署时比在实验室中表现出更多的延迟,显然在部署后遭受“延迟腐烂”。在许多情况下,这种退化是由于离线调优参数值造成的,这些参数值造成了硬件、软件和网络配置的差异,这些差异可能会在系统的生命周期中发生很大的变化。如果我们要认真考虑系统在高频率下的可靠运行,那么我们就必须认真考虑在线测量和调优能力。
对于响应速度快于人类的系统来说,将人类从交互循环中解放出来,进入监督和决策的角色是必要的。同样,联网计算机的绝对数量将使人类无法在单个节点的层面上进行识别。
机器人技术代表了自主操作的一个方面,在这方面已经建立了滩头阵地。不幸的是,到目前为止,大部分工作都集中在“机电一体化”上,而不是软件上,结果导致一些远程监控车辆比有人驾驶的车辆需要更多的人类参与(尽管是远程的)。然而,DARPA新的机器人研究项目正在朝着另一个主动突破点前进,在这个突破点上,无人驾驶车辆的数量将超过它们的人类主管。这些项目强调开发新颖的软件能力和可重用的软件平台,使研究人员能够在彼此的成就基础上进一步发展。
在未来十年,机器人系统的数量可能只比人类多数千倍。然而,基于软件的“知识机器人”可以达到的乘数几乎是无限的,以每个用户数百万个活跃代理的角度思考也不是不合理的。不幸的是,大量的代理研究关注的是相对较小的系统,而不是更大的问题:给定几十亿人类用户,每个人都能够生成一个相当大的代理选民,我们应该预计到涉及数万亿代理的交互空间。由于这些代理在处理我们的业务时将彼此交互,我们需要发明技术来维持人类对基于代理的系统的控制,同时允许代理以尊重整体系统目标和约束的方式相互自主协商。
让人类脱离循环意味着需要在三个额外的研究领域工作:用户界面、软件和重用。
用户界面和监控界面。虽然对于交互计算的人机界面的性质仍有大量的工作要做,但我们应该开始考虑主动计算的界面。人类应该如何与响应时间比自己更快的系统交互?当界面被用来监督成千上万的计算机和/或数百万的智能机器人时,情况有何不同?
创建软件。除了让人类退出操作循环之外,减少人类在软件创建过程中的参与也是必要的。减少程序员的参与是可取的,因为要用软件填充的节点种类繁多,而且创建与物理世界直接交互的软件很困难。交互问题的根源在于需要沿着反馈回路通过所有组件传播物理约束,即插入在传感器和传感器之间的所有软件模块。研究的挑战是开发自动化这个过程的软件创建技术,可能通过直接生成规格说明,就像在基于模型的系统中一样。另一种方法是利用编译器技术,自动将约束“编织”到代码片段中,并“专门”它们,使用类似于最近在施乐PARC的面向方面编程项目中开发的概念[2和康奈尔大学的合众研究[4].
一些好的抽象。机器人和/或嵌入式软件的简单重用仍然难以实现。虽然组件软件经常被吹捧为这方面的灵丹妙药,但一些更简单、更基本的东西可能会在正确的方向上走很长一段路,即识别经常重新创建的重要功能块,以及一些表达其行为的良好抽象规范。可以在事务处理中找到一个有用的类比,其中单个抽象(原子事务)的非正式规范将字段从不可靠和定制解决方案的沼泽转移到这样的环境:理解解决方案空间;可重复使用的软件可以购买;程序员在很大程度上摆脱了容错的细节;最重要的是,实现24/7操作的系统被广泛部署。只要开发一两个强大的嵌入式系统功能抽象,就可以大大提高软件生产效率。
宣布至少在交互领域取得部分胜利,尤其是在办公自动化领域,代表着一个巨大的机会,可以重新检查假设和重新审视跨计算机科学许多方面的问题,包括系统架构、网络、理论和人机交互。交叉研究的成熟机会包括:
活跃的技术。将applet自动链接到运行中的浏览器,对终端用户来说可能是一件小事,而对计算机科学家来说,可能只是解释能力的另一种展示。然而,该领域程序的规模和速度现在可以动态地扩大,这代表了我们组装、分发和更新软件能力的重大变化。
主动技术——支持代码移动性的技术在主动环境中是重要的,原因有两个:运行在网络嵌入式处理器上的软件可以动态更改,使嵌入式功能的思想能够大规模转变;通过将applet启动到网络中,最低级的嵌入式处理器可以命令较大系统的资源,为程序员提供非常不同的外观和感觉。
利用大量。信息技术终于达到了概率方法应该在系统设计中发挥更大作用的程度。一些变得重要的维度是:
在过去的几十年里出现了一个熟悉的模式:应用领域(如语音、视觉或数据挖掘)的研究人员采用隐藏的马尔可夫模型来解决他或她的问题;研究人员会受到同事的嘲笑;这种方法后来被证明是更好的,并被广泛采用。考虑到这种模式在许多领域重复出现,有必要探讨一些更广泛的猜想是否能得到支持。在极端情况下,人们可以想象计算机科学的基础从确定性模型跃迁到概率模型,隐藏的马尔可夫模型或贝叶斯网络取代有限状态机,就像物理学从经典转向量子力学一样。
各种理论和系统研究人员已经在探索这一领域。例如,微软研究员埃里克·霍维茨(Eric Horvitz)已经确定了计算机科学中一些可能最好使用概率方法(www。research.microsoft.com/ ~霍维茨/)。一个特别令人兴奋的机会是利用主动系统的反馈特性。给定一个统计性能已经得到表征的算法,可以开发一个在线过程来识别可能位于运行时分布尾部的实例,也就是说,算法的预期剩余运行时非常大的情况。在这些情况下,可以使用反馈机制使系统进入可能有较短运行时间的不同状态。
改造工程。尽管经典的工程学科在很多方面都接受了计算机,但它们还没有接受计算机科学。相反,可编程设备被用来模拟传统的解决方案。很少有人采纳主流计算机科学系统和理论社区的经验教训,也很少有人根据廉价、充足和网络化的计算重新思考各种工程学科的基础。
安全、社会和伦理问题。有一类重要的问题超出了本文的范围,它们与积极主动的更广泛含义有关。例如,“实体化”会带来一系列问题,这些问题源于技术的侵入性和渗透性,而“实体化”和“走出去”会带来授权、安全和责任等问题,当计算机被授权代表我们做出决定时。
课程开发。计算机科学教学课程应该丰富材料,使学生准备处理物理世界和虚拟世界之间的边界。随着概率方法、信息论和控制理论成为交易的必要工具,它们需要被整合到学术程序中。
在过去的40年里,计算机科学只解决了世界上2%的计算需求。是时候行动起来,现实一点,走出去,建立积极主动的系统了。
1.Adjie-Winoto, W.等。有意命名系统的设计和实现。在第十七届ACM操作系统原理研讨会论文集(南卡罗来纳州查尔斯顿,1215年12月)。ACM出版社,纽约,1999。
2.Irwin, J., Loingtier, J. m。, Lopes, C., Maeda, C., Mendhekar, A., Lamping, J.,和Kiczales, G.面向方面编程。收。参考文献Sci 1241, 220242年。
3.jicklider,人机共生。愤怒的交易。嗡嗡声。的事实。工程师,11(1960年3月)
4.刘旭,等。从组件构建可靠、高性能的通信系统。在第十七届ACM操作系统原理研讨会论文集(南卡罗来纳州查尔斯顿,1215年12月)。ACM出版社,纽约,1999。
5.Patterson, D, Anderson, T, Cardwell, N., Fromm, R., Keeton, K., Kozyrakis, C., Thomas, R.,和Yelick, K.智能RAM的一个例子。IEEE微17日2 (Mar.-Apr。1997), 3444。
6.西蒙,H。人工科学。麻省理工学院出版社,剑桥,马萨诸塞州, 1969年。
7.Tennenhouse, D.和Bose, V.无线信号处理的SpectrumWare方法。无线网络。2,1(1996年1月),112。
8.21世纪的计算机。科学。是。265年,3(1991年9月),94104。
9.活跃网络的愿景与现实:从基于胶囊的系统中吸取的教训。在第十七届ACM操作系统原理研讨会论文集(南卡罗来纳州查尔斯顿,1215年12月)。ACM出版社,纽约,1999。
这里所描述的议程是我在担任DARPA信息技术办公室主任期间制定的,这篇文章间接提到了通过ITO研究项目赞助的各种努力(参见www.darpa.mil/ito)。我在这个领域的想法受到了杰出的DARPA项目经理的深刻影响,我有幸与他们共事,也受到了许多杰出的计算机科学研究团体成员的影响,他们在我在DARPA任职期间慷慨地贡献了他们的时间和精力。这里所表达的观点只是我个人的观点,并不代表英特尔公司的观点。
1值得注意的例外是我们在机器人领域的同事。虽然嵌入式和实时系统的大量工作也在各种工程学科中进行,但所采用的方法与主流计算相比相当僵化。
2图灵奖得主巴特勒·兰普森(Butler Lampson)提出,由于设计团队的创造力储备可能有限,所以在可能的情况下,应该使用强力手段,控制创意预算,以解决可能超出计算资源增长的问题。
3.用于隔离不同进程流的保护机制可能基于类似Ian Pratt(剑桥大学计算机实验室讲师)在安全I/O工作中探索的概念,以及网络研究社区开发的用户模式协议栈。
©2000 acm 0002-0782/00/0800 $5.00
允许制作本作品的全部或部分的数字或硬拷贝用于个人或课堂使用,但前提是该拷贝不是为了盈利或商业利益而制作或分发,并且该拷贝在第一页上带有本通知和完整引用。以其他方式复制、重新发布、在服务器上发布或重新分发到列表,需要事先获得特定的许可和/或付费。
数字图书馆是由计算机协会出版的。版权所有©2000 ACM有限公司
没有发现记录