计算机发展小脉络
为什么要梳理计算机发展的小脉络?
近日在收听的吴军的硅谷来信,其中讲到了飞机发明的历程。其中讲到仿鸟派和空气动力派。仿鸟派一直形而上学,没有了解飞行的根本原因,导致一直没有发明成功飞机。然而空气动力派回到问题的原点分析源问题,最后才从理论上剖析飞行的原理,从空气动力学的角度促进飞机的发明。
同样,今天图灵机已经发明了80多年,今天所有的IT基础都是以图灵机作为基石垒建起来的。而今火热的人工智能,也是那时构建起的基础发展而来。但是如果想要实现图灵验证机,那么就必须要实现超级人工智能。而目前的人工智能都是初级人工智能,这类智能无法推进人类社会突破技术奇点。所以初级人工智能如果要质的飞跃进入超级人工智能,图灵在那时的划下的那条线是必须要跨越的。所以回溯本源是必要的。从回溯中才能找到问题的所在,是以由此文。这也是对自己学习近12年的计算机的一个回头看。此文致敬计算机启蒙老师李万龙教授。
帕斯卡,发明了机械计算机装置,只做加减法,帕斯卡的机械计算机解决了人力计算到机械计算的跨越,这是历史性的跨越。莱布尼茨改进了帕斯卡的装置,可以计算乘法。
巴贝奇,差分计算机。因为其一直使用机械方式计算十进制的问题,导致问题规模扩大时产生的指数级复杂度远远超出了当时的机械工业水平。所以局限于时代的工业性以及计算方法问题,所以未能研制出自动计算机。其妻阿达,即拜伦的女儿,也在差分计算机做出巨大的贡献。
如果当时的有晶体管和集成电路,那么历史会改写吗?!或者巴贝奇出生在20世纪,那么他命运和截然不同吗?这类问题回归到了科学和技术的问题,即科学需要证明可行性,技术需要实现如何做。如果超越时代性,那么无论多么天才的idea都一定会夭折。所以达芬奇才是天才,因为他知道问题的边界和知道如何在边界范围内实现他的idea。
布尔代数,从逻辑上证明0和1的可计算性,也就是后来电子工程中电路设计与非门的数学基础。从数学的基础上,让十进制的计算化为二进制,从理论论证了一般问题的二进制计算问题的可行性。1848年提出了布尔代数的思想,经过6年的完善,1854年他完成布尔代数的成果《思维规律》。
1937年图灵发表了论数字计算在决断难题中的应用的论文,该文中提出可以辅助数学研究的机器,即图灵机。该论文以及其后的可计算性与λ可定义性的论文发表使得图灵从理论上证实了可计算性和计算的复杂性,即从数学中NP问题。
一般人的思考问题是归纳法,小步快走,从而发现规律。而天才是演绎法,从问题原点出发,获得的答案的结果,无论是证实还是证伪。图灵的研究了数学大师希尔伯特问题(即希尔伯特1900年提出的23个重要、根本性的数学问题)后受到了启发,意识到计算机的极限所在,进而提出了可计算性问题。即可用计算机计算的一定确定性,而意识是不确定的。人工智能如果是计算机衍化而来的,那么一定是确定的。而意识是人类特有的,是不确定的。人工智能和人脑智能之间的鸿沟注定是无法逾越的。这一点笛卡尔在其哲学原理中也提到类似的理论,我思故我在,划分了人和物的区别。
图灵是天才是思考问题的步骤是,1.世界上是否所有问题都能等价为数学问题?2.世界上是否所有数学问题都有解?3.是否所有的数学问题都有有限步骤的解?4.前三个问题都是是的情况下,是否可以设计一种自动计算的机械,在有限的机械动作下计算出结果,即机械运动结束,结果就计算出来了。其中第4点的基础是计算来自于确定性的机械运动,受到到时冯诺依曼的启迪。所以图灵证明了哪些问题可以借助计算来实现,奠定了今天计算机世界的大厦的一块重要基石。其科学的思维对于从事计算机的人极具启发性,技术有边界的,那个边界就是科学给我们划定的。天才的图灵给我们划定了80年都无法跨越的边界,失败的巴贝奇一直在边界外工作,或者说他根本没有边界的意识。由于当时的世俗原因,图灵被迫吃苹果自杀,天妒英才。后来乔布斯为纪念图灵将图灵留下的苹果作为其公司的logo。2TURING,2JOBS。
香农,信息论的创始人。1938年,他在分析了电话交换机和布尔代数之间的类似性之后,把电路的开和关以及布尔代数的0和1关联了起来,使用布尔代数优化了开关电路,从而奠定了数字电路的理论基础。值得注意的是他的论文继电器与开关电路的符号分析是其硕士论文,其被称为21世纪最伟大的硕士的论文。
楚泽(Konrad Zuse),数字计算机之父。1938年,他从工程师的角度,制造出第一台自动计算的计算机,即Z1。实现简单的模块运算复杂的问题,即将复杂问题简单化,重复计算简单化的模块进而解决复杂问题。难得的是,楚泽在不知道香农的数字电路的理论基础上,纯粹从工程师解决问题的角度发明了自动计算的计算机。计算机从此可以自动计算,因而跨入了新的时代。后续研发了Z2,使计算机由机械计算升级成继电器计算,即实现了二进制数程序控制,使计算机的发展又前进一步,真正的实现了图灵机的功能,即数字计算机。
冯诺依曼,在1944年设计出存储程序通用电子计算机方案,巩固了二进制数字计算和程序内存的思想,奠定了今天电子计算机的框架基础,即计算单元,存储单元,控制单元,输入和输出单元。至今计算机的框架还没有突破该体系。图灵从软件理论上论证可计算性和计算的复杂性,而冯诺依曼从物理架构上奠定了计算机的基础。从此人类社会进入了电子计算机时代。
注:算盘是计算机吗?算,因为算盘是有指令,即算法口诀。