语用网
下一代计算机系统模型
电子计算机问世到现在仅仅60年,就已经全面进入并彻底改变了我们的社会生活:从智能卡、手机、PC机到互联网,但是仍然远不能满足人们对于计算的爆炸式需求。在经历了网络泡沫和网格计算、SOA等技术探索之后,科学家们普遍认识到了:计算协作才是当前计算机系统领域的主要问题,“计算机科学与技术不能再采用以往一样的方式发展,需要革命性的突破。”因此我适时公开了语用网(Pragmatic Web)计算系统项目,语用网就是我为了解决计算协作问题而发明的下一代计算机系统模型。
体系结构
当前的计算系统技术是遵循图灵机模型的软件工程,突出表现为基于软件模块的面向对象系统分析与程序设计。而语用网支持的语用计算系统则在软件模块之上,遵循Petri网论构造语用单元典(Pragmatic Unit Dictionary),所有计算机应用都表现为基于语用单元典的语用文章,就像我们阅读汉语文章时需要字典词典一样。
如同建筑领域有建筑科学、工民建工程技术和建筑实体,计算领域也有系统理论、体系结构系统工程技术和技术应用(如图)。所有的计算系统模型都包括输入(I)、输出(O)、加工处理程序(P)和存储状态数据(D)。图灵机就是在先明确应用需求—即输入和输出的情况下,后研究程序与数据的算法实现问题,即Turing’s machine =(I,O;P,D);而Petri网则在已知—即先有程序和数据的条件下,后研究由输入输出所构造成的网络系统问题,即Petri nets =(P,D;I,O)。从模型定义可知,图灵机与Petri网两者精确对偶。语用网系统是用软件的协作来仿真人类社会的实践过程,因此被我称为“虚拟社会(Virtual Society)”。
1939年图灵机模型出现,1946年冯·诺依曼设计出了支持图灵计算的机器系统,从此开创了计算机硬件软件产业。1962年Petri在研究自动通信(Communication with Automata)系统时认为“异步并发现象”是其基本计算特征,从而提出了并在随后几十年里研究成熟了Petri网理论。整个90年代,Petri网的研究与应用主要集中在由专家Alast领衔的工作流(workflow)领域
事实上业界领袖的IBM和微软早已认识到了工作流(workflow)的重要性,并且他们合作推出了工作流语言(BPEL4WS,Web Services Business Process Execution Language,基于SOA的业务处理执行语言)。在微软最新操作系统Windows vista里不仅支持了、而且还说以后所有的应用系统都将基于工作流之上。因此,Petri网论正在成为网络计算、特别是基于SOA之上的业务处理流程领域的研究热点。
计算是人类意识的独立存在(计算领域称“存在”为本体ontology),是用物理机制实现了的人类意识。意识表现为自然语言符号系统,因此计算工程表现为计算语言,而且计算语言就是自然语言的理论化。现代符号语法学认为自然符号系统包括句法、语义和语用三个面向,语义表达主观逻辑性,语用表达客观真理性。而人工智能领域的语义学(Semantics)理论属于古典语法学范畴,里面还没有出现语用概念。
软件工程里的程序设计都是由有限数量的语言关键字、关键字有限排列为程序语句、语句有限排列为程序片段、片段有限排列为软件模块,很类似于英语的26个字母、字母有限排列为单词、单词有限排列为语句、语句有限排列为文章。这是否暗示西方工程数学发达、软件工业程序设计技术比我们优越的原因呢?
根据通用Petri网论揭示的虚拟社会计算理论,我设计了语用语言。语用语言类似于汉语的“字词句”的语法结构,即由字典(Dictionary)定义的广义无限(实则有限)的语用“字”、“组字为词”、“谴词造句”,Petri叫它们为语用单元(Pragmatic Unit)。其中语用字就是从软件模块抽象而来的—叫原子语用单元(Atom Pragmatic Unit);语用词抽象的是联系软件模块的消息(Message,现代并发操作系统正是根据消息、而不是别的什么,来调度软件模块运行的,并且某些模块还可以访问确定的或者不确定的数据文件);语用句抽象一个具有独立功能的软件模块组合,其间用消息相互联系而成为一个基本Petri网系统。
所有的计算机应用都表现为一篇基于语用单元典表达的语用文章,语用文章被语用网系统按语用单元典“编译”为BPEL执行语言,再转化为操作系统用消息来调度的软件模块的并发执行。语用计算是比软件计算更加抽象更加高级的又一层计算系统,这是否又暗示汉语确实比英语更加抽象更加高级的内在原因了呢?
语用网仿真人类社会,在数字空间里建立“虚拟社会”。其技术基础是当前炙手可热的P2P网络技术,如Jxta项目。所谓P2P网络,从计算技术上可以理解为Peer-to-Peer系统,从系统结构上可以理解为People-to-People的人类社会计算机用消息在算法之间的流动来仿真现实社会行为,大致有3个功能模块的抽象级别:
1、原子模块,接口描述里的几个功能的定义位置都在一个程序DLL里,模拟的是人的一个社会职能方面。原子模块是最小功能模块。
2、本地模块,接口描述里的几个功能定义位置分布在本地机器的若干不同程序DLL里,仿真现实世界的一个社会职能人。
3、网络模块,接口描述里的几个功能定义位置分布在网络中的不同机器里的若干程序DLL里,仿真现实世界的一个社会机构,就是网格界著名的Ian Foster所谓的虚拟组织。此时消息被网络设备传递到互联网里的不同计算机上。
特别称这些模块为服务、虚拟社会里的计算服务。这些模块都表现为一个Petri网系统,小网系统又组成为更大的网系统,直至整个虚拟社会
语用网里,每一台计算设备里都有一个语用单元典,记录着其可以支持的软件模块及其协作的消息,表明了其可以理解的语用范围。称有语用单元典的计算系统为语用设备。语用网里的所有计算系统都是语用设备。
语用单元典的作用,如同汉语的字词句典,是阅读语用符号文章的理解工具,是虚拟社会里最基础最重要的因素之一。我特别设计一个称为“盲点”的机构来管理运行语用单元典。盲点相当于汉语词典的编撰机构,是语用计算里的法定标准化组织。
如上所述,语用网的系统技术基础就是Web1.0、SOA、P2P、Web2.0,以及用native-XML数据库实现的语用单元典。它们都是已经或正在成熟的计算系统工程化技术。
语用设计就是基于语用单元典来构造语用文章,是软件工程所不能涉及到的、比软件工程更加高级更为抽象的再一层系统技术,叫知识工程。网页是给人阅读的,语用文章就是给计算机阅读的网页。
语用网里,计算应用界的人们所关心的是他们设计的软件模块和语用文章。前者是图灵机模型的应用,关注于算法的可计算性和计算复杂度问题;后者是Petri网理论的应用,关注的是网系统的可达性和不变量分析。两者都是计算功能的具体实现。
内容影响
语用网系统构建虚拟社会,主要的工作是确定虚拟社会模型以及基础设施建设,如人类社会就有崇尚自由民主的西方资本主义和我们中央集权的社会主义模式之分。不同的社会模型会导致不同的基础设施,如西方就采用三权分立的基础政权模式,而我们就不是。模型与设施是由人们根据计算应用需求和系统目标决定的,如在计算系统内部可能采用高度集中的社会模型,而在系统之间又可以采用临时协商的民主机制。
比如计算安全,软件安全里主要关注的是硬件系统安全和软件系统数据一致性,以及通信安全等。而语用安全里则主要关注的计算资源在全网范围内的共享与协作的社会和谐与平衡问题,大体上相当于人类社会的可持续发展和物质与精神文明范畴。
计算机应用系统分析与设计,将被分离为算法分析与程序设计部分,和知识分析与语用设计部分。前者属于软件工程,后者属于知识工程。计算机设计人员将被分为算法分析与包括数据结构设计在内的程序设计,和知识分析与包括构造语用单元在内的语用应用设计两类。前者主要由当前的软件程序员群落发展而来,知识分析主要由各行业的领域专家发展而来,语用设计将是一个新兴的计算机工程技术类别,也叫Petri网系统仿真。具体应用设计将弱化为任何社会成员,即一切有社会需求的人员都可以通过特别的计算机应用系统来满足自己的需要。
语用计算就是“杀死”软件工程里“怪兽”的那颗“银弹”(Brooks,1986),能够充分实现软件模块的共享,能够让计算机工程过程像建筑工程一样精确地规划和预测。语用工程能够百倍地简化计算机工程过程,千倍地扩大其应用领域和范围,万倍地倍增社会财富,就像当年的工业革命对人类产生了深远影响一样。
比较
语用网与其它网格项目的比较
在迅速冷却的 “网格计算(Grid Computing)”和取而代之的“语义网格(Semantic Grid)”领域里,人们并没有从计算系统理论里去认识“什么才是网格计算的系统模型”,也没有从符号语法学里去理解“什么才是语义网格的语义学模型”。不首先搞清楚这两个关键问题,整个领域都将是“空中楼阁”。前者相当于蓝图,后者相当于施工方法,既没有蓝图,又不懂施工,如何造得出高楼大厦来?
我认识到这个基于计算机网络(特别是互联网Internet)环境的、基本特征是“异步并发现象”的、由众多软件系统通过数据通信而相互联系成的“复杂巨系统”,正是Petri网计算系统理论所揭示的虚拟社会。但是搞Petri网论的理论家们没有认识到要实现Petri在20年前就指出来的Petri网工程—“语用设计语言”,导致当前的计算机工程界的技术实践与Petri网理论界的系统仿真相脱节。
语用网的实现技术已然成熟,是计算系统结构自身发展的必然。计算满足社会需求,我们需要联合起来,方可完成语用计算系统。
参考资料
最新修订时间:2022-04-14 21:56
目录
概述
体系结构
参考资料