云绾宁墨晔小说

云绾宁墨晔小说>人类科学的认知结构:科学主体性解释的“类脑模型” > 第二 人工智能对人类知识的表征(第2页)

第二 人工智能对人类知识的表征(第2页)

seanf(“%d,%d”,&a,&b);

>

if(a﹤b){

c=b;b=a;a=c;

a-=b;

printf(“n%dn”,a);

}[20]

这些均证明,程序性、机械化是中国算学的主要特征。到《九章算术》时,中算已经具备了机械化程度很高的计算程序,有些甚至还包括了现代计算机语言中的某些构造性要素。

指出现代计算机算法思想的东方源头,并不是说这种算法思想就是东方数学的简单回归;它只是表明,东方数学思想促成了近代数学思想的某种程度的转变;如果近代西方数学思想不发生“算法”的转向,就不可能结出现代计算机算法思想的果实。而且,其间发生的思想交融与互补,并不只止于数学方面,它也与逻辑有关。也就是说,近代逻辑的“算法”转向,与数学一道,对现代计算机科学思想产生了积极的影响。关于数学史上的“算法”转向,将在后面的第十三章中进行比较详细的分析,这里仅就逻辑算法倾向做一简要追溯。

算法思想改变古典形式逻辑的一个突出例子,就是英国哲学家和逻辑学家托马斯·霍布斯(1588~1679)关于“推理即是计算”思想的提出。作为近代欧洲逻辑史上的一个重要逻辑学家,霍布斯认为“计算”就是指数学上的加减乘除四则运算,其中,加和减是最基本的。而人类心灵的两种基本活力也体现在加和减两个方面。因此在他看来,“所谓‘推理’是指计算”[21]。或者说,逻辑学上的“推理”只不过是计算中的一种——语词系列间的相加减。那种不用语言和断言进行的推理,可称作“不用语词进行的内心推理”。这实际上是肯定了形式逻辑以外的“推理”活动的存在。那么,这种新的逻辑形式又是什么呢?霍布斯认为,这种新的逻辑是一种类似于计算的演算逻辑。研究表明,霍布斯的上述思想对后来的莱布尼茨创立逻辑演算体系有重大启发意义。其中,从外延性的角度来处理命题和推理的观点,对后来的布尔、弗雷格等人创立数理逻辑也有根本性的意义。甚至,霍布斯本人关于人类理性活动存在着大量机械活动的想法以及推理与计算合一的观点,对当代计算机科学也有一定的意义。[22]

霍布斯之后的莱布尼茨继承了前辈的思想。他试图摆脱古典形式逻辑主要以自然语言作为表述工具的做法,代之以形式化的语言以建立他所谓的“通用语言”。他最初的通用语言符号素材更多地来自于以埃及象形文字和汉语表意文字为代表的语言符号系统。以后,他又进一步创制了一些逻辑符号,并借用了代数运算方法,提出了概念演算的思想。他设想,人们可以像进行数学演算那样来进行“思维的演算”。他清楚地看到概念、判断、推理所具有的数学演算性质,注意到逻辑学的词项、命题、三段论等与代数的字母、方程式、符号变换等具有某种形式的相似性,认为所有这些都是克服亚里士多德逻辑学的不足的方面。在此基础上,他创立了数理逻辑。鉴于数理逻辑对现代计算机的基础性作用,人们普遍认为,莱布尼茨也是现代控制论和计算机科学的先驱者。

到19世纪,英国数学家、逻辑学家布尔(GeeBoole,1815~1864)提出的逻辑代数与其说是从代数方面发展了数理逻辑,不如说是从逻辑方面奠定了代数的逻辑基础。在布尔的工作中,他运用逻辑的方法对代数的基本运算(AND、OR和NOT)进行了严格的定义。例如,AND的定义是,给定两个类,称它们为x和y,表达式xANDy表示由x和y的所有公共元素构成的集合。进一步,由xANDy表示为x和y的“逻辑积”,即xy。这是布尔的一个创造性贡献。这样,在严格定义的基础上形成布尔代数的三个公理:

①xy=yx;

②x(y+z)=xy+xz;

③xn=x,其中n是任意自然数。

显然,用逻辑符号表达代数运算关系,势必将代数运算关系看作符号之间的逻辑关系,这在纯粹数学方面迈出了十分重要的一步。

更为重要的还在于,布尔代数中使用了二进制数码0,1。如等式x=1的意义可理解为命题X是真的,等式x=0的意思可理解为X是假的。按照这种用法,更复杂的命题的真值可用小写字母的组合,例如,命题X和Y的合取的真值可用xy来表示,X和Y不相容的析取的真值可用组合x+y来表示。这实际上是建立了二值逻辑的代数系统,也是逻辑史上第一个逻辑演算系统,它部分地实现了莱布尼茨当年的设想。尤其是,布尔代数的二进制数码成为后来的计算机集成电路片的设计原理。就是使用热离子管或晶体管而产生的电脉冲线开关状态能够为布尔代数的0,1数码所描述:如果一个开关的接通(开关在两种状态中不是这一状态就是另一状态)与命题的肯定相仿,那么它的切断就与同一个命题的否定相仿;两个开关串联与两个命题的合取相仿,而两个开关的并联就与用“或”联结两个命题相仿,诸如此类。可以说,计算机的逻辑电路可能是布尔代数的最好的物理表现形式。[23]

布尔的工作表明,算法思想的确立并非“单向度”的;在一定程度上,算法思想与演绎思想实现了某种程度的融合。在布尔代数的逻辑化工作之后,逻辑学家弗雷格等人加快了算术的逻辑化进程。弗雷格认为,算术是可计数的领域,因而“数”是算术中最基本的概念。但是,通常人们对数的理解要么满足于直观,要么认为其无法下定义。对此,弗雷格从集合论出发来“定义”数。认为一个数就是一个集合,“所谓数就是某个类的数”。这样来理解数,数就成了一个普遍的概念。也即对数的理解被置于形式化的一系列条件当中;它不再是被当作直观的对象,而是被当作思考的对象。在此基础上,“算术定律是分析判断,因而是先验的。这样,算术就会仅仅是一种扩展形成的逻辑,每个算术句子就会是一条逻辑定律,然而是一条导出的定律”[24]。

同时,弗雷格、罗素(BertrandRussell)等人的谓词逻辑或谓词演算系统为数理逻辑的发展开辟了新的方向,进而成为人工智能知识表征的重要逻辑基础。尽管他们的逻辑符号及公式中没有出现例句中的“是”字,但其所蕴含的仍然是古老的“S是P”命题形式。而且,“S是P”中所指涉的“存在”含义仍然被保留下来。这说明,谓词逻辑与古典形式逻辑有关。这些成果标志着数理逻辑的最后形成,也为计算机原理的形成奠定了坚实的理论基础。例如,在人工智能史上占有重要地位的麦卡洛克、皮茨两人建构的模型,所采用的符号系统就是R。卡尔纳普的语言Ⅱ系统(包括罗素和怀特海数理逻辑中各种记号)。他们还将神经元的输入—输出关系看作一个布尔函数。

在计算机数学史上最具有革命性的一步是由图灵迈出的。1936年,图灵在普林斯顿发表了《论可计算数及其在判定难题(entsgsproblem)中的应用》一文,首先提出“图灵机”概念。由于此前的1931年,数学家科特·哥德尔(KurtGodel)证明希尔伯特规划是不可能的;因此,图灵将他关心的问题放在任何按公理系统的特殊数学形式之外,来回答是否存在能在原则上一个接一个地解决所有数学问题的某种一般的机械步骤的问题。然而,这一问题回答的部分困难在于确定什么叫作“机械过程”。为此,图灵进一步设想如何才能把“机器”的概念表达出来。他认为也只有当某种机器在进行机械运算时人们才能弄清所谓“机械过程”。这就是所谓“能行过程”,即存在这样一些计算,它们的完成受到纯机械法则的支配。关于这些计算,图灵注意到哥德尔提出的一组重要的递归函数可具体化为若干非常基础的数字操作步骤;而所有图灵机计算函数都可以是递归的。而且,根据“丘奇—图灵论题”,对于任何可计算某一函数的有效步骤,都存在一个能够进行计算这个函数步骤的图灵机(TM)。也就是说:“算法”“可计算的”“递归的”“有效的”等,彼此是等价的,均表示图灵机实行的机械运算。

必须注意的是,图灵在回答是否存在能在原则上可一个接一个地解决所有数学问题的某种一般解题步骤问题时,实际上给出了“机械过程”“算法”“有效性”等概念的精确定义。当这些定义用抽象的数学形式(递归函数)表达时,实际上给出的是关于机械运算的形式系统,而他的图灵机不过是一个理想化的机器而已。正如后来哥德尔(1964)评论到的:“由于后来的进展,特别是由于图灵的工作可以给出形式系统一般概念的精确而又无疑地适当的定义,因而不可判定的算术命题的存在和一个系统的一致性在同样系统中的不可证性,现在能够对包含一定量有穷数论的每一个一致的形式系统加以严格的证明。图灵的工作对‘机械程序’(别名‘算法’或‘计算程序’或‘有穷组合程序’)的概念作出了分析。这个概念被表明是等价于‘图灵机’的概念的。”[25]这实际上就是我们所说的“一般算法概念”。

在这种算法概念的基础上,1945年,冯·诺依曼用电子加法器和存储的方式构成了计算机的体系结构,部分地弥补了图灵机的不足。其设计的计算机类型被称为“冯·诺依曼型计算机”。该计算机包括存储器、控制器、运算器、输入—输出设备等组成部分。其中运算器和控制器是信息加工处理的中心部件,合称为中央处理器(CPU)。其基本过程是:提取指令、操作(执行)指令和存储结果。可以说,从数字计算机开始,通过一系列“提取”“操作”和“存储”控制而实现的序列加工的主要思想,一直占据支配地位,而这一地位是由冯·诺依曼奠定的。

总之,现代数字计算机等价于通用图灵机和冯·诺依曼机,在原则上可运行执行任何计算的程序。所谓“计算”或“算法”,就是按照预先编制好的程序对有限长的符号序列进行有穷的形式变换,以产生一组新的符号。它所遵循的是所谓“物理句法”。这依然是人工智能研究不可或缺的主要方面,由此而形成的“心智计算理论”(putationaltheoryofmind,CTM)自然成为人工智能和认知科学的主要理论基础。

回过头来可以看到,同样是“算法”概念,在图灵机与中算之间已经有了很大的差异。在中算中,算术并不表现为一类抽象的命题或陈述集,而是表现为以“术”为中心的一系列算法。这些算法是为解决具体实际问题而存在的。虽然在这个过程中,具有一般性的、有效的算法会以“术”的形式保留于算法程序当中,且算筹符号操作具有了“语形”的特征,但总的来看,算式或“命题”之间并不构成具有演绎推理性质的逻辑关系或句法关系,因而不能从算筹的符号及符号之间的关系进行“形式化”的推演。当然,图灵机或图灵算法毕竟处理的是“可计算”“算法”一类的问题,而且按照哥德尔定理:不管任何精确(形式化)数学公理和不同法则系统,如果它足够宽广于包容简单算术命题的描述并且其中没有矛盾,则必然包含某些用在该系统内所允许的手段不能证实也不能证伪的陈述。人们在确定哪一种算法为“真”时,并不是只能在某个算法系统内所能确定的。这就必然包含某些非形式化(例如直觉)手段的使用。事实上,图灵在他1936年的论文中的“假说”已经表明:对符号序列进行一种能行过程的非形式的直觉概念完全等价于一种用图灵机所执行过程的精确概念。这一点正如M。A。阿尔贝勃所评论道的:“对于这个假说根本无法给出形式上的证明。一个形式证明必须对所包含的概念下定义,而这种形式上的定义是和直觉概念的想法不相容的。人们在此能做出的仅仅只是一种借助于归纳推理的证明;迄今为止在递归函数论中凡是在直觉上显然存在有能行过程的地方总是可能设计一种图灵机来执行一种与上述过程相应的严格过程。”[26]对于形式化与非形式化在图灵机中的这种相互关系,我比较赞同美国亚利桑那大学哲学和语言学教授、认知科学家R。M。哈尼什的观点。他认为,算法是不同于程序的(程序通常用于编码算法,并且能运行算法);算法与程序之间的关系就像数(number)与数字(numerals)的关系,也可以比作一个词的意义与词的声音(形状)之间关系。[27]后者涉及语形过程。

人工智能对人类知识的表征不仅体现在一般算法概念的形成方面,而且还体现在数学的机器定理证明上。我们可以以吴文俊的几何定理机器证明为例。正如吴文俊所指出的,20世纪六七十年代的几何定理的机械化方法及其证明虽然展示出宽广的前景,却在实际研究工作中遇到了发展的“瓶颈”问题:虽然希尔伯特的《几何基础》证明几何的基础完全可以排除“连续”这样一类公理,因而几何的公理、定理与证明,实质上都可以用有限次的构造步骤来叙述和完成;但是,像希尔伯特依据公理系统引入数系统、坐标系统(如投影几何、仿射几何)并不是件很容易的事。而且,一般的几何学著作偏重于欧几里得传统,着眼于公理间的逻辑关系,而置数系统与坐标的引入于次要的地位,或直接从数系统出发建立几何学,而不再考虑几何对象的现实来源与公理基础。[28]这两种偏颇的倾向造成了公理系统与数量关系之间的“断裂”。这样,希尔伯特的方法使用范围就显得过于狭窄,而逻辑学家塔尔斯基(A。Tarski)的方法效率又太低。例如,1976年IEEE刊物上一篇关于美国机器证明试验的报道指出,运用塔尔斯基方法于计算机只能证明一些近于同义反复的“儿戏式”定理。为改变这种状况,吴文俊另辟蹊径,直接从中国古代机械化、构造性思想中汲取营养。他抓住中国古代几何学始终不与数量相分离的传统以及宋元时期将几何问题化为多项式问题等解题“精华”,从几何的公理系统出发,引进数系统与坐标系统,使任意几何定理的证明问题成为纯代数问题,并对几何定理假设部分的代数关系式进行整理,最后在计算机上实施。[29]从吴文俊的证明方法可以看出,其方法的成功“是我国自《九章算术》以迄宋元时期数学的直接继承”[30]。

人工智能既汇集人类不同的知识精华,同时又以自身独特的形态对知识进行表征。最常见的知识表征形式(或方法)包括一阶谓词逻辑形式、生产式系统、语义网络、框架、脚本、面向对象的知识表征、过程知识表征、状态空间知识表征以及与或树表征等。这些知识表征形式各有所长。其中,框架知识表征的“顶层”是固定的,代表假设局势中的真实事物;下面的若干层有许多“终端”,每个终端可以规定它赋值必须满足的条件。计算机科学家尚克(Rogerk)的脚本展现了人类某种活动的事件序列,并且能随具体情境的变化而对某些规则进行调整。这样做的结果试图在人类实践的背景上将经验知识纳入知识表征当中。同样地,基于规则的系统可以方便地表达关于“该做什么”的策略性信息。例如,在西蒙等人的通用问题求解程序中,人们依靠启发式方法,即依靠经验性规则,求得问题的满意解决,而无须考虑所有的可能。另外,语义网络的进一步发展被看作是具有内部分层的网络形式。网络中的每一个节点或典型情境仅仅代表所谓“次概念”(subcepts)和“次符号”(subsymbolic)。次概念和次符号之间通过网络激活机制获得的权值被认为是系统对于环境的真实表征。

完结热门小说推荐

最新标签