一种可能恢复成原状的形式,那么他们就能够宣称,这个人的个性必须维持不动。这正如同我刚打的字母序列和我现在于我的文字处理机屏幕上看到的展示是一样的。如果我把它们从屏幕上移开,它们被编码成某种微小的电荷位移的形式,处在一种和我刚才打印的字母在几何上毫无类似性的某种形态。然而,我可在任一时刻把它们移回到屏幕上去,它们在那里正如同没有进行过任何变换一样。如果我选择把我才写下的存起来,那么我可以把字母序列的讯息转移到一个以后我可取走的磁盘的磁化形态上去,然后关掉机器就中和了在它上面的所有(有关的)微小电荷位移。第二天,我可重新插入我的磁盘,复原小电荷位移并在屏幕上正如没有发生过任何事一样重新展现字母序列。这对于强AI支持者而言是“清楚的”,一个人的个性可用同样的方式处理。所以这些人会宣称,正如在我的显示屏幕上的字母序列一样,如果一个人的身体形状被翻译成完全不同的某种东西,譬如说一块铁的磁场,他的个性一点也没损失,实际上对他根本没有发生过什么。他们甚至会宣称,当一个人的“信息”处于这不同的形式时,他的意识知觉继续存留。一个“人的知觉”在这种观点中实际被当成一段软件,而他作为一个物质的人的特殊的显现则被认为是通过他头脑和身体硬件对这软件的运算。作这些断言的原因仿佛是,不管硬件采取何种物质形式,例如某种电子仪器,人们总可以“问”软件问题(以图灵检验的形式),并假定该硬件能令人满意地进行计算以获得这些问题的答案。这些答案会和一个人处于正常状态时所回答的相同。(“今天上午你感觉如何?”“哦,相当好,谢谢,尽管我有一点讨厌的头痛。”“你对你的个人认同感和别的什么有点不对头的地方吧?”“不;你为什么这样讲?这似乎是很古怪的问题。”“那么你感到你正是昨天的那个同一的你吧?”“当然是这样!”)科学幻想的超距运送机12是一种被频繁讨论的观念。这是作为譬如讲从一颗行星到另一颗行星的“运送”手段。所有的讨论都是关心它是否能在实标上做到这样。旅行者不用空间飞船以“正常”方式运送其身体,而是从头到脚地被扫描,他身体的每一原子和电子的准确位置和完整的特征都被全部细致地记录下来。然后所有这些信息由一电磁信号束(以光速)发射到目的地。在目的地把这信息收集到,并作为装配旅行者以及他所有记忆、企图、希望和最内心的感情的复本的指导书。至少这就是所期望的,因为他的头脑状态的每一细节都被完全忠实地记录、传送和重造了。假如这个机制能成功,则旅行者的原版可被“安全地”毁掉。显然的问题是:这真的是从一处到另一处旅行的一种方法吗?或者它是否仅仅是制造一个复本而把原先的人杀死?假定这种方法在这框架中被证明是完全可靠的,你会准备用这种方法吗?如果超距运送不是旅行的话,那么在原则上它和从一个房间走到另一个房间有何不同?在后者的情形,难道不是一个时刻的原子简单地为下一时刻的原子提供定位的信息吗?我们毕竟看到了,维持任何特殊原子的等同性都是没有任何意义的。原子的任何运动模式难道不就是构成从一处到另一处传播的信息的波吗?在描述从一个房间随便遛达到另一房间的我们旅行者的波动传播和发生在超距运送机中的有什么本质的区别?这个机制能成功,则旅行者的原版可被“安全地”毁掉。显然的问题是:这真的是从一处到另一处旅行的一种方法吗?或者它是否仅仅是制造一个复本而把原先的人杀死?假定这种方法在这框架中被证明是完全可靠的,你会准备用这种方法吗?如果超距运送不是旅行的话,那么在原则上它和从一个房间走到另一个房间有何不同?在后者的情形,难道不是一个时刻的原子简单地为下一时刻的原子提供定位的信息吗?我们毕竟看到了,维持任何特殊原子的等同性都是没有任何意义的。原子的任何运动模式难道不就是构成从一处到另一处传播的信息的波吗?在描述从一个房间随便遛达到另一房间的我们旅行者的波动传播和发生在超距运送机中的有什么本质的区别?见311页)考察了量子理论的结构后,才能回到这些事体上来。让我们看看强AI的观点与远距运送问题有什么关联。我们设想,在这两个行星之间的某处有一转换站,在这里把信息暂时存储然后再传送到最终的目的地。为了方便起见,这信息不用人的而是用某种磁或电的仪器的方式存储。该旅行者的“知觉”是否会在和这一仪器的相关联中呈现呢?强AI的支持者愿使我们相信,事情必须如此。他们说,我们想问该旅行者的任何问题,在原则上都可由此仪器答复,“只要”对他的头脑的适当活动建立模拟就可以了。该仪器会拥有所有必须的信息,而余下的只不过是计算的问题。由于仪器会完全如同旅行者一样地回答问题,那么(图灵检验!)它就是该旅行者。这完全回到了强AI的论点,在考虑精神现象时硬件根本不重要。我觉得这一论点是未被证实的。它是基于如下的假设,即头脑(或精神)实际上是一台数字电脑。他们假想,当一个人思维时并没有引起特别的物理现象,也许头脑真正需要具备特殊的物理的(生物的、化学的)结构。化学的)结构。强AI观点)争论道,所做的仅有的假设是,任何必须涉及的特殊物理现象的效应都可由数字电脑精密地仿照。我可以相当肯定,大多数物理学家会论证道,在我们现在对物理理解的基础上作这样的假设是非常自然的。我将在后面的章节提出我自己持相反观点的原因(我在那里还需要把话题引到为何我相信甚至不必作任何假定)。但是,在此刻我们暂且接受这一(普遍的)观点,即所有相关的物理总能由数字计算来仿照。那么(除了时间和计算空间的问题外)这唯一真正的假设是一个“行为主义”的问题,即如果某物全然像一个意识地知觉的本体那样地行为,那么人们还应该坚持说它“感觉”到它自己是那一个本体。强AI观点认为,在头脑运行中实际上被涉及的任何“仅仅”是作为硬件问题的物理,必须能用合适的转换软件来模拟。如果我们接受这个行为主义的观点,那么问题就归到普适图灵机的等价,以及任何算法可的确由这种机器执行的事实,还有头脑按照某类算法动作行动的假设。现在到了我要更明白地解释这些迷人的重要概念的时候了。注释1.例如,参阅伽特纳(1958),格里高里(1981)以及所引用的参考文献。2.例如,参阅雷斯尼柯夫和韦尔斯(1984)181—184页。有关计算奇才的经典总结参阅罗斯·玻勒(1892)以及斯密斯(1983)。3.参阅格里高里(1981)285—287页,格雷·瓦尔特(1953)。4.这个例子引用自德尔伯吕克(1986)。5.参阅奥柯涅夫(1988)和基奈(1988)。参阅列维更多的有关电脑下棋的情形。6.当然,大部分奕棋问题都被设计得使人类很难解决。要去构造一种人类觉得不是极难、而现代解决下棋问题的电脑在一千年内也解不出的下棋问题似乎不太困难。(所需要的是一个每下一着都要筹划非常多步的、但又是相当明显的方案。例如,已经知道一些需要筹划大约200步就绰绰有余的问题!)这提出了一个有趣的挑战。7.为了明确起见,我在本书从头到尾地采用了西尔勒的术语“强AI”以表示这一极端观点。术语“机能主义”也被经常地用于表示本质上同样的观点,但也许不总是这么明确。明斯基(1968),伏多(1983)以及霍弗斯达特(1979)是这类观点的一些倡导者。8.可从西尔勒(1987)211页找到这种宣称的一个例子。9.道格拉斯·霍弗斯达特在对西尔勒的复印在《精神》上的原始论文的批评中抱怨道,由于涉及到的复杂性,没有一个人可想象把另外的一颗人脑的整个描述“内在化”。的确不能!但是就我所见,这不是问题的全部。人们仅仅关心实行目前要体现单个精神事件发生的一段算法的那个部分。这可以是在回答图灵检验问题时某个瞬息的“意识实现”,或者它可以是某种更简单的东西。任何这种“事件”是否都需要一段极其复杂的算法呢?部。人们仅仅关心实行目前要体现单个精神事件发生的一段算法的那个部分。这可以是在回答图灵检验问题时某个瞬息的“意识实现”,或者它可以是某种更简单的东西。任何这种“事件”是否都需要一段极其复杂的算法呢?参见载于霍弗斯达特和德涅特(1981)368和372页的西尔勒(1980)的论文。11.有些关于这类事体博学的读者也许会忧虑符号不同的问题。但是,如果我们在进行交换的同时,使其中的一颗电子旋转360°,甚至那个(可争论的)区别也消失了!(参见第六章322页的解释。)12.参见霍弗斯达特和德涅特(1981)的导言。第二章算法和图灵机算法概念的背景算法概念的背景我在下面的各种讨论中,有时将要用到一些数学表达式。我注意到有些读者排斥这类东西,或者觉得它们吓人。如果你是这种读者,那么我请你原谅,并请你按照我在“敬启读者”中的建议。其实,这里论证所需的数学知识并不超过小学水平,但要仔细地弄通它们,则需要一些认真的思考。事实上,大部分描述是十分显明的,只要细心地跟随就能很好地理解。但是,如果人们只是为了稍微领略其风味而取其精华,也能有很大的收益。另一方面,如果你是一位专家,我还要请你原谅。我猜想,它仍然值得你花一段时间把我所说的看过一遍,并且可能会有一两件东西引起你的兴趣。“算法”这个词来自于九世纪波斯数学家阿布·雅发·穆罕默德·依伯恩·缪莎·阿勒——霍瓦里松,他在公元.. 825年左右写了一本影响深远的《代数对话录》。“算法”这个字现在之所以被拼写成“algorithm”,而不是早先的更精确的“algorism”,似乎是由于和“算术”(arithmetic)相关联所引起的。(还值得指出的是,“代数”(algebra)这个词来源于该书的题目的阿拉伯字“al jabr”。)然而,比阿勒——霍瓦里松的书早很多就知道了算法的实例。现在被称作欧几里德算法的找两个数最大公约数的步骤是在古希腊(公元前.. 300年左右)即有记载的一个最熟知的例子。让我们看看这是如何进行的。随意取两个特定的数,譬如讲.. 1365和.. 3654。所谓的最大公约数是可以同时整除这两个数的最大的整数。在应用欧几里德算法时,我们让这两数中的一个被另一个除并取余数,在.. 3654中取出.. 1365的两倍,其余数为.. 924(=3654-2730)。我们现在用此余数即.. 924以及我们刚用的除数即.. 1365去取代原先的两个数。我们用这一对新的数重复上述步骤,用.. 924去除1365,余数为441。这又得到新的一对.. 441和.. 924,我们用441除.. 924,得到余数.. 42(=924-882),等等,直到能够被整除为止。我们把这一切如下列出:..3654÷1365给出余数.. 9241365÷924给出余数.. 441924÷441给出余数.. 42441÷42给出余数.. 2142÷21给出余数.. 0。我们最后用于做除数的.. 21即是所需要的最大公约数。欧几里德算法本身是我们寻找这一因子的系统步骤。我们刚才把这一步骤应用于特殊的一对数,但是这步骤本身可被十分广泛地应用于任意大小的数。对于非常大的数,要花很长时间来执行该步骤,数字越大则所花的时间越长。但在任何特定的情形下,该步骤最后会终结,并在有限的步骤内得到一个确定的答复。每一步骤所要进行的运算都是非常明了的。此外,尽管它可应用到大小没有限制的自然数上去的这个事实,但是可以用有限的术语来描述整个过程。(“自然数”简单地就是通常的非负1整数0,1,2,3,4,5,6,7,8,9,10,11..)。的确很容易建立一个(有限的)描述欧几里德算法全部逻辑运算的“流程图”。应该提到,我们在这里隐含地假定,已经“知道”如何实行从两个任意自然数A和B的除法中得到余数的必须的基本运算,所以这一步骤还未完全被分解成最基本的部分。那种运算又是算法的,是用我们在小学学到的除法的非常熟悉的步骤来进行的。在实际上,这个步骤比欧几里德的其他部分更复杂不少,但是可以再为它建立一个流程图。其复杂性主要起源于这个事实,即我们是(假定)对自然数用标准的“十进位”记号,这样子我们需要列出全部的乘法表和忧虑移位等等。如果我们简单地用一连串某种n个记号来代表数n,例如..代表五,那么可从非常初等的算法运算看到余数的形成。为了得到当A被B除时的余数,可以简单地从代表A的记号中不断取走代表B的符号串,直到最后余下的记号不够再进行这种运算为止。最后剩下的符号串提供了所需的答案。例如,为了得到十七被五除的余数,我们可以简单地从.....不断地取走五的序列..正如下面所示:.................由于我们不能再继续这种运算,所以很清楚,其答案是二。用这种连续减法找到除法余数的流程图可由下图给出:由于我们不能再继续这种运算,所以很清楚,其答案是二。用这种连续减法找到除法余数的流程图可由下图给出:为了使欧几里德算法的全部流程图完整,我们把上面形成余数的流程图代入到原先流程图的中右部的盒子中去。这种把一个算法向另一个代入是一种普遍的编电脑程序的步骤。上述寻求余数的算法是一道子程序的例子,也就是说,它是由主程序当作它的运算的一部分(通常是预先知道的)召来使用的算法。当然,把数n简单地用n个斑点来表示,在涉及到大数时效率非常低,这就是为什么我们通常用更紧凑的诸如标准的(十进位)系统的原因。然而,我们在这里并不特别关心运算或记号的效率。我们所关心的是运算在原则上是否可被算法地实行的问题。如果我们用一种数的记号是算法的东西,则用另一种记号也是算法的。两种情况中只有在细节上和复杂性上有差别。欧几里德算法只是在整个数学中可找到的大量的经典算法步骤之一。尽管算法的这一特殊例子的历史渊源,一般算法概念的准确表达只从本世纪起才有记载,也许这是令人印象深刻的。事实上,这一概念的各种不同描述都是在本世纪三十年代给出的。称作图灵机的概念是最直接的、最有说服力的、也是历史上最重要的。相当仔细地考查这些“机器”将是很适当的。关于图灵“机”有一件事必须记在心里,就是说它是一段“抽象数学”,而不是一个物理对象。这一概念是由英国数学家、非凡的破码专家兼电脑科学的开山鼻祖阿伦·图灵在1935—1936年间提出的(图灵1937)。其目的是为了解决称为判决问题的一个范围广阔的问题。它是由伟大的德国数学家大卫·希尔伯特部分地于1900年巴黎国际数学家会议上(“希尔伯特第十问题”),更完整地于1928年玻罗那国际会议上提出的。希尔伯特不多不少地要求解决数学问题的一般算法步骤,或者不如讲,是否在原则上存在这样步骤的问题。希尔伯特还有一个要把数学置于无懈可击的坚固基础上的宏伟规划,其中公理和步骤法则一旦定下就不能变。但是在图灵完成其伟大的工作之际,这个规划已经遭受到由奥地利才气焕发的逻辑学家库尔特·哥德尔在1931年证明的令人吃惊的定理的粉碎性打击。我们将在第四章考虑哥德尔定理及其意义。图灵关心的希尔伯特问题(判决问题)超越出任何按照公理系统的特殊的数学形式。问题在于,是否存在能在原则上一个接一个地解决所有(属于某种适当定义的族的)数学问题的某种一般的机械步骤?回答这一问题的部分困难在于决定什么叫做“机械过程”。这概念处于当时正常的数学概念之外。为了掌握它,图灵设想如何才能把“机器”的概念表达出来,它的动作被分解成基本的项目。这一些似乎是清楚的,图灵也把人脑当成在他意义上的“机器”的例子。这样,由人类数学家在解决数学问题时进行的任何活动,都可以被冠以“机械步骤”之名。虽然这一有关人类思维的观点似乎对于图灵发展他的极重要概念很有价值,我们却绝没有必要去附和它。的确,图灵在把机械过程的含义弄精确时,向我们展示出存在一些完好定义的数学运算,在任何通常的意义上,都不能被称为机械的!图灵本人的这一方面工作现在可间接地为我们提供了他自己有关精神现象性质观点的漏洞。这个事实也许不无讽刺意味。然而,这不是我们此刻所关心的。我们首先要弄清图灵心目中的机械过程究竟是什么。图灵概念图灵概念这样,虽然我们仪器只有有限个内态,它却能够处理大小不受限制的输入。此外,为了计算应允许该仪器召来无限的外存空间(我们的“粗纸”);而且能够产生大小不受限制的输出。由于该仪器只有有限数目的不同的内态,不能指望它把所有外部数据和所有自己计算的结果“内化”。相反地,它必须只考察那些立即处理的数据部分或者早先的计算,然后进行需要对它们进行的任何运算。也许可在外存空间把那个运算的相关结果记下来,然后以一种精确决定的方式进行下一个阶段的运算。正是输入、计算空间和输出的无限性质告诉我们,我们正在考虑的仅仅是一种数学的理想化,而不是在实际上可真正建造的某种东西(见图2.1)。但这是极其关键的理想化。对于大多数实用目的而言,当代电脑技术的奇迹为我们提供了无限的电子存储仪器。事实上,在上述讨论中称为“外部的”存储空间的类型,可实际上被认为是现代电脑的内部工作的一部分。存储空间的某一确定部分是否被当作内部的或外部的,也许只是术语的问题。按照硬件和软件是划分“仪器”和“外部”的一种方法。内部可当成硬体,而外部为软体。我将不必拘泥于此,但是不管从那个角度看,当代电子电脑是图灵的理想化的极好近似。图2.1一台严格的图灵机需要无限的磁带图灵是按照在上面作记号的“磁带”来描述其外部数据和存储空间的。一旦需要,仪器就会把该磁带召来“阅读”,而且作为其运算的一部分,磁带可前后移动。仪器可把记号放到需要的地方,可抹去旧的记号,允许同一磁带像外存(也就是“粗纸”)以及输入那样动作。因为在许多运算中,一个计算的中间结果起的作用正如同新的数据,所以事实上在“外存”和“输入”之间不做任何清楚的区分也许是有益的。我们记得在欧几里德算法中,不断地用计算不同阶段的结果去取代原先的输入(数A和B)。类似地,这同一磁带可被用作最后输出(也就是“答案”)。只要必须进行进一步的计算,该磁带就会穿过该仪器而不断地前后移动。当计算被最后完成时,仪器就停止,而计算的答案会在停于仪器一边的磁带的部分上显示出来。为了确定起见,我们假定,答案总是在左边显示,而输入的所有数据以及要解的问题的详细说明总是由右边进去。让我们有限的仪器前后移动一条潜在地无穷长的磁带,我自己觉得有点不舒服。不管其材料是多么轻,移动无限长的磁带是非常困难的!相反地,我宁愿把磁带设想成代表某一外部环境,我们有限的仪器可以通过这环境进行移动。(当然用现代电子学,既不需要“磁带”也不需要“仪器”作实际的、在通常物理意义上的“运动”,但是这种“运动”是一种描述事体的便利方法。)依此观点,该仪器完全是从这个环境接受它的输入。它把环境当成它的“粗纸”。最后将其输出在这同一个环境中写出。在图灵的描述中,“磁带”是由方格的线性序列所组成,该序列在两个方向上都是无限的。在磁带的每一方格中或者是空白的或者包含有一个单独的记号①。我们可利用有记号或者没有记号的方格来阐释,我们的环境(也就是磁带)可允许被细分并按照分立(和连续相反的)元素来描述。如果希望仪器以一种可靠并绝对确定的方式工作。这似乎是合情理的要做的事。然而,我们允许该“环境”是(潜在地)无限的,把这作为我们使用的数学理想化的特征。但是,在任何特殊的情形下,输入、计算和输出必须总是有限的。这样,虽然可以取无限长的磁带,但是在它上面只应该有有限数目的实在的记号。磁带在每一个方向的一定点以外必须是空白的。我们用符号“0”来表示空白方格,用符号“1”来代表记号方格,例如:1111111111111我们要求该仪器“读”此磁带,并假定它在一个时刻读一个方格,在每一步运算后向右或向左移动一个方格。这里没有损失任何涉及到的一般性。可以容易地由另一台一次只读和移动一个方格的仪器去仿照一台一次可读