到目前计算机科学和人工智能关于符号系统已有极其完善的观念。H. Simon和我把符号系统称为物理符号系统,其前加“物理”二字是要说明二点:其一是想强调该系统是物理上可实现的系统;其二是想使人们了解该观念提出的来源,也就是说符号系统的观念是对人的符号行为的恰当的见解,是一种经验的发现。在一符号系统中首先需要有某种物理媒介——符号就是该媒介中的模式。只要你能区分某些物理世界中的模式、参量,至于我们谈论的系统具有什么样的物理特性是没有关系的。事实上相互能区分的模式的供应是无穷无尽的。究竟你具有的符号是一无限的集合或是一极大的数量,关系是不大的。这是一个重要的概念。
我将以“符号结构”来表示与表达式同样的意义。一表达式不过是媒介中的一个域。表达式占有空间和时间,它包含着这些我们能称之为标记符号的符号实例。所以,一表达式是该媒介的一个小组块,符号寓于该组块之中。符号仅是模式,而表达式则现实地占有空间和时间并具有权值(如果你从值的角度来考虑的话)。媒介的大小也是随意的——通常要求具有一未经限定的记忆。
加工是在媒介中进行的,而且这些加工过程都要把表达式作为其输入。这种加工是一种实实在在在干事的物理过程。这一过程先取出符号的标记,然后对其表达式进行创造、修正和撤销。这里需要一个完全性的概念,即是说这一加工过程最终能得到我们所需要或想拥有的各种不同的结构。之所以要将这些事表达得如此概括的原因之一就是想使我们能认识到实现这一加工过程可以有无限多的不同的方式,也就是说如果你将这一过程解析成许多小段,再把它们组合起来,你能获得其完全性。实现这一过程会有许多不同的方法。
现在让我们来看看符号是干什么的,我认为符号是用来“指谓”的。指谓的观念使得符号真正具有符号的品格,这就是说符号使我们能存取符号所指谓的内容。如果你说那符号指谓X(不论X是什么),那么你在该系统的物理结构中将会看到一种“存取关系”。如果给出一符号标记,那么它将使你能通过一物理的存取关系获得符号所指谓的信息。从输入来看,存取关系意味着你能获得包含有该符号所指谓的信息的表达式。这是一个递归和转换的过程,你所获得的并不是事物本身而只是一表达式,该表达式由符号组成使你能获得其他的信息。从输出来看,你会看到某些过程一当被激活就会影响具体的实体。如我有一符号ADD(加)且出现在指令之中,这就是说实际上会有某种加的过程发生。如果我有一符号TAKE ANOTHER LOOK AT THE WORLD(用另一种观点来看世界)那么作为符号加工过程的输入将会使该过程采取一定的观点去看世界。所以,输出联结和输入联结二者是略有不同的。
所以一符号的指谓在这种意义上就是会通过存取的路径使我们去获得另一信息。这就是计算机科学和人工智能中的符号概念所真正包涵的内容。这也就是在记忆中以对其他表达式存取的方法所建立起来的东西。其结果使我们能以物理的存取机制作为出发点成功地利用它来进行更完全意义上的指谓,即指谓外部世界中的事物。此外,还有“解释”的作用。我是在计算机科学的意义上来使用这一术语的。在计算机科学中解释意味着系统中的某些符号是指谓符号的加工的。还有,意味着该系统具有这样的属性,一当具有一指谓某一过程的符号,该系统就能执行这一过程。在这种意义上对于这些符号也有某种完全性,即我能写一表达式告诉系统去做任何它能做的加工。这样,使整个系统能工作并提供行为的通用性原来是人们能写出指谓一可执行的行为过程的表达式的缘故。系统有一解释程序(我们在通常的计算机科学的意义上来使用这个词),它能执行一表达式并产生行为。这就是为系统提供通用性的东西。
当然,系统(为了完全性)还会有一控制过程。整个物理系统是如此构成以便能在取 - 执行周期中工作,产生出一个表达式又一个表达式,而且这些表达式又会产生出新的表达式。因此,系统的行为实际上是在系统的符号品格的控制之下。这就是物理系统的决定性的要求。任何具有这些属性的系统都可称为物理符号系统。人们可以在无限多的具有各种不同的外观的程序语言中看到这样的系统。
还有一些需要进一步阐明的。当你在计算机科学中看到所发生的事件,你会清楚地看到所有系统都具有层次 - 结构。也就是说,计算机系统的层次是一种层次结构。这是一种明显的经验事实。尽管在计算机科学中进行着各种多样化的进程,但这种层次结构保持不变。我不知是否有人对层次结构为什么具有如此巨大的稳定性曾经有过理论上的说明,但它确是在计算机科学中人们能看到的稳定的事物之一。此外还有“器件的层次”,在这一层次上,具体的器件如晶体管可用量子力学的术语来描述,信号的传递是用电磁学的术语来描述的。这样,人们还能在“电流”的层次上来对这些事物进行合理的描述——在这一层次媒介是电压和电流(有时也有不同,如果你没有用电的计算机而是用一水动的计算机)。再下一层次就是“逻辑”层次。在逻辑层次上我们看不到连续的电流或器件的变化——此时被加工的要素是比特,而且这种信息单位是由“与”及“或”和“与非”及“或非”的逻辑操作来加工的 · 在这个层次上我们得到了一个关于系统的完全的描述。在这一层次上面还有一个层次,即我们通常称之为“寄存器 - 传送”的层次,在这一层次上我们不谈论单个的比特,而是谈论寄存器和将事物从一寄存器转到另一寄存器的功能等等。逻辑层次是更为基本的层次——它是在比特向量上进行的工作。在此基础上我们可上升到“程序”的层次,为了进行描述我称之为“符号层次”。在这一层次由程序员的操作而给出,此时你可使用一种机器语言或其他的像LISP、Snobol、Fortran等语言。此时你具有一种语言描述,即使用解释程序和一组序列的行为用符号和表达式来进行描述,尽管序列的行为并不总是唯一的,这就是计算机科学中通常所说的“体系结构”。一个以寄存器 - 传送层次来描述的计算机能实现和支持以程序或符号层次来描述的系统的体系结构。在这之上还有“结构”层次,在这一层次上你从制造商那儿订购你所要的计算机——即一种轮廓性的结构上的描述。在结构层次上,我们对结构的细节并不关心。
这种层次结构是极其稳定的,我们从这种种层次结构中能经验地知道若干事情。其一是从一层次对一系统作出描述,再从另一层次进行描述就会有许多系统。例如,有许多不同的寄存器 - 传送层次系统,它们在应用比特等方面可能有共同的值和要素,但在其他方面则是极不相同的。同样,各种不同的逻辑电路能在电流层次上实现。因而你可不必拘泥于一种系统,而只要在每一层次上抓住各系统的家族相似。其二是如果我给你任一层次上的任一具体的系统,这样顺着层次结构你可以有无限多的方式来实现它。在这种意义上,每个层次都有其自主的描述。每种新技术的出现通常能为下一层次的同一系统提供更便宜、更好、更可靠的实现。再有更令人吃惊的是这些系统的这种一般结构的观点是如此的稳定而其技术方面则经历着急剧的变化。如VLSI计算机的发展虽然它在其他方面是多么的不同但这种稳定的层次结构仍保留下来。
尽管福多认为人们可以不注意系统具有什么样的结构,然而在计算机科学中大量的工作仍是关于结构的。重要的问题是符号系统及其结构;人们试图理解当我们使用知识、智能、表达、信息等概念时在符号系统中到底发生了什么。这些术语是准技术的,在人工智能界人们都使用这些术语以求解决他们日常的工程上的和科学上的问题。但我们要问一下这些术语是什么意思。
我最近所关注的术语是“知识”。我企图要了解什么是“知识”。很明显,至少对我来说,我是怎样运用这个术语的。我把知识是当作一种“能力”的概念或一种设计的说明来运用的。如果你要建立一系统并将知识装入该系统,那么你就要设计一种结构来存贮这一知识然后才能谈到记忆中的知识。所以,知识就是对记忆中的内容的说明,有了知识才能设计一种结构来实现它。如果你要问这种说法如何付诸操作,无论该系统具体的是什么样的,体现知识的结构这一部分将会制导系统其他部分的行为,因而事情似乎是这样,当一个人在使用知识时就是试图描述该系统而不说明它的内在结构。人们只要假定该系统具有知识,而知识能用来实现该系统所拟进行的加工。在这一层次上,人们谈论知识和目标,其驱动的原则就是合理性的原则。系统具有知识当它具有目标并能利用知识来实现这一目标。这些分析就导致了一个区别于符号层次的知识层次。因此,我提出这样的观点,即存在着一个自主的知识的层次,这一层次通常没有引起人们细心的鉴别,但我想我在这方面的工作是因为我在我们的实践中看到了这个问题。
让我们更细致地来讨论知识层次的问题。我试图把知识层次看作是系统的层次结构中的另一独立的层次,这一层次与其他层次一样具有系统的特征。在知识层次媒介是知识,而在符号的层次媒介是符号结构、表达式等。知识层次的要素是目标和行动。在某种意义上,由于系统是一物理系统因而为其中的知识提供行动的“躯体”。系统的组成是一组目标加上一组行动再加上知识体,此外无更深的内在结构。之所以没有内在结构是因为这一系统层次的应用#在结构设计之前来描述系统,或者,在另一情况下来描述系统的内在结构、对于这种内在结构我是不关心的或者是不知道的。在这里行为规则就是系统按合理性原则来进行操纵(行为规则与电流规律和解释程序如何操作的定义相适应)。所以,知识层次在某些方面是一奇怪的系统层次而在其他方面依我看来与其他层次十分相似。
关于知识层次的这种描绘导致这样的观点,即把表达看作是知识加上存取结构。知识层次上的抽象的原则允许我们忽视符号具体地是如何实现所有这些合理的行为的问题。事实上,正如系统的层次结构上所有其他的层次,下一层次的组织结构必定要恰当地组合以便实现高一层次上的事物。其结果,智能系统中的符号过程即是从知识和目标的角度去实现着合理的行动。我所舍去的是任何表达中必存在的存取关系。如果在符号层次上我给出一个具体的记忆,这就会导致从记忆中提取知识或信息时需要的加工时间,就会把问题复杂化。
所有这些分析都伴随着一个强烈的看法,即从符号系统的观点看来,心智的本性的实质就是一符号系统。让我再作一些说明。我所说的本质的东西,并不意味着是问题答案的全部。而是说,在回答进化中生物机体如何才能生存和他们如何建立起当前的多样性等问题时,那是一个抓住本质的回答。这也不是说,当一个人提出进化论时,他解决了所有这些问题,而是差得远。事或上,我们也知道达尔文在若干重要的方面是错误的,但他却为阐明这些问题提出了正确的框架,细胞学说在生物学中也是如此,它是生物学中的指导性的结构概念。这种观点认为生物系统实际上是由细胞的集合所构成的,离散的细胞之间存在着相互作用。这并没有解决所有的问题,但它使一个人置于正确的方向之中。更近的例子是地质学,人们可以这样说,板块构造是说明地球的地质史的核心。然而这并没解决所有的问题,而是帮助人们去完成最困难的工作。我认为,物理符号系统的研究方向是正确的,我们正在探索系统的层次结构如同前面所描述的那样,我们所需要的就是把心智看作物理宇宙之中的事物。在物理符号系统的结构的背后是一种能干任何我们需要它去干的事情的结构。它说明在人类和其他事物中的符号行为是怎样发生的。
历史上对此曾有过若干评论,这类观点实际上是古老的。然而理解一物理符号系统的本性和使这种理解达到足够的详尽却是最近20年的事。这种发展十分不同于通常科学的发展。人们不可能确定是哪一位科学家提出了这个观点使它成为一种理论。我们都从这种概念中学习,都使用这种概念而后对它才有一个正确的看法。在整个这类系统之间,在通用计算系统和图林机之间以及各种程序语言之间确实存在着极大的相似性。它们之中许多是由程序语言的结构而实现的,人们能够从许多不同的关于过程发生了什么的观点出发来应用它而不必实际上理解符号系统的概念。这样,人们确以不同于常规科学研究的方式提出了一个解决问题的方法。对于这样一个基本概念作如此处理是承奇怪的,但我认为它具有历史的准确性。
关键之点就是随机存取记忆的发明。随机存取记忆创造了某种我们称为地址的东西,它具有一个符号的所有物理属性。它使我们能对符号进行存取从而使其成为任一表达式的部分。一旦我们有了地址的观念,就能在处理符号的整个过程偶而获得这样的认识。
知识层次是谈论对某些符号和过程我们能进行什么计算的问题,即使如此,我们一般还不知道系统是如何动作的,如果我认为由于我只知道知识和目标而不能在此基础预见行为而假定合理性的话,那么我就要退到从符号层次来描述系统以便弄清具体的加工过程到底发生了什么,依靠我们对系统内在的符号过程和结构的了解,就能预言系统将会发生什么。
让我来总结一下。这种系统的一个关键的特征就是如果你要问结构中的符号的意义,恐怕这样提问并不是一种正确的方式。一个符号实际上是一种装置它使我们在应用知识时能够进行存取从而使符号功能在一定的上下文中能起作用。如果你想到一表达式,而且该表达式中有一符号嵌入其中,该符号就是可以存取的,这样符号的应用可由整个上下文和表达式来描述。符号不过是对知识的存取,它使知识能被应用,因而一符号的意义并没有说明什么东西。一个符号只能看作是存取远端知识的一种装置。
符号系统的第二个重要的特征是指当你从一个具有内在记忆结构(地址)的诸多属性出发,你就能把它发展成一个系统,而且通过指谓关系与外部世界发生联系。这并不是由存取结构直接给出的,而是通过计算而实现的。这一发现是我们通过能够建立更加智能化的程序这一事实而认识到的。
(原载《意义与计算结构:》—书,阿伯莱克斯出版社1986年版)