一、虚拟世界
这篇文章可以看成莉林学院的魔女们旧版遗弃的封印中克洛诺所接触的虚构世界的理论基础。对于虚拟世界不得不谈到爱斯拉妮娅公主的Zloker01以及资料层Z,Zloker01主要机能属于对事象的观测和解析。而资料层Z则属于虚拟演化的关键参数,通过对事象的观测演算并干涉甚至可以影响到她所在的世界。当然,现实世界中通过虚拟演算来干涉改变现有物理规则目前是行不同的,但是虚构世界的雏形却真实的存在着。
网络游戏,虚拟世界可以看成是这个系统的最早雏形,其实,早在2002年,一名叫做EdwardCastranova的经济学家就突发奇想,将网络游戏Everquest视为一个真实的在线王国而计算它的GDP,结果发现,它的总量排名世界第14位!不管我们愿意不愿意,网络游戏已经成为了一种不可小觑的力量而存在。我们需要认真、严肃地对待这一现象了。
然而,抛开那些眼花缭乱的3D模型和天方夜谭的游戏故事,究竟什么才是一个计算机模拟的世界?为什么计算机可以创造这些眼花缭乱的虚拟世界?这需要从最最简单的计算宇宙模型开始。
考虑一排方格,每个格子都有黑、白两种颜色并且,每个格子都有左右两个邻居其中黑色的方格有左右两个邻居(用灰色进行表示)。那么每个方格就可以根据它的两个邻居以及它自己的颜色按照一定的规则而改变颜色,例如,一个可能的规则.这是一个规则列表,第一排为所有可能的三个输入方格的颜色,下面的一排表示根据这些不同情况,中心的方格应该变成什么颜色。例如第三个规则上面是黑白黑,下面是黑,则当一排方格中有三个方格刚好是黑白黑的时候,中心的方格就变成黑色。这样,一排方格之中的每一个都可这样按照此规则更新自己的颜色而得到一排新的方格排列,进一步,我们可以再次应用这组规则到新得到的方格上,这样又会得到一排新的方格。可以不停的重复下去……如果我们把每次应用规则得到的方格排成一排一排的,就可以得到一个图案。我们可以很容易将这个游戏的玩法编成程序,在计算机上实现它。实际上,这个程序就可以看成是一个虚拟世界的简单原型。
我们知道,所谓宇宙就是指空间和时间的总合。简单的来说空间中的物质按照物理规则运动。那么,在这个简单的程序中,这一排方格就是宇宙的空间,不同颜色的方格相当于宇宙中的物质,那个更新规则就是这个虚拟宇宙空间中的物理规则。而每一步更新就可以看作是宇宙时钟的一次嘀嗒。因此,空间、时间、物理全都有了,它就是一个最简单的人造的虚拟世界。
我们所生活的真实宇宙只有一个,它的物理规则当然也是固定死的。然而,对于人造的虚拟宇宙来说,我们就相当于是上帝,拥有了更改物理规则的权利,这样,我们可以通过改变规则而创造出各种不同的宇宙,显然,不同的规则能够创造出不同的虚拟世界。有了虚拟世界的最小的模型,我们就能够进行科学分析来。我们可以像物理学家一样做实验,看看在不同的物理规则下,宇宙会是什么样子的。我们可以像生物学家一样对虚拟世界中的各种花纹“生物”进行分类,等等。
二、历史
任何一门学科的发展都有其历史,而有关这样的虚拟宇宙的研究则可以追溯到上世纪的一名伟大的科学家:冯.诺依曼(vonNeumann)。我们都知道冯.诺依曼是第一台计算机的设计师,还是博弈论的创始人,但很少有人知道,在他的晚年(大概1940年左右),他在研究一个有趣的课题:人造机器的自我繁殖。
冯.诺依曼考虑一台机器在一个充满了各种机器部件的池塘里面游来游去,它可以拾起一些部件,并将不同的部件组装到一起……,那么,有没有可能一台机器将不同的组件组装到一起形成一个新机器,而这台新机器和它自己是一模一样的呢?这样的机器就是一台能够进行自我繁殖的机器!
有了这个目标,冯.诺依曼却在自己的科研进展中遇到了障碍。一个关键问题是,当时的人工机器部件非常昂贵,要开发出一台真正的能够自我繁殖的机器需要耗费大笔的资金。这个时候,他的好朋友——一个名叫乌拉姆(Um)的数学家给他提供了一条宝贵的建议:为什么不在一个虚拟的世界中创造你的自繁殖机器呢?就比如一个二维的棋盘世界?
虚拟世界有很多好处,其中最大的好处就是可以省去大笔的经费。于是,冯-诺依曼采纳了乌拉姆的建议,真的在一个二维的虚拟世界中设计出了这样一台能够自我繁殖的机器。后来,人们就将这个二维的虚拟世界模型叫做二维的细胞自动机。
冯.诺依曼的这一工作影响了后来的很多人,包括著名的遗传算法之父JohnHolnd,人工生命之父C.G.Langton,还包括当时还很年轻的Wolfram。Wolfram是一个具有传奇经历的人,他于1959年出生在伦敦,曾就读于牛津大学。15岁的时候,他就发表了第一篇学术论文;22岁的时候,由于他的杰出成绩而获美国著名的MacArthur大奖,并成为此奖项最年轻的获奖者。后来,他曾先后到普林斯顿高级研究院、伊利诺伊斯大学当教授,专职从事科研。
在1980年代中期,Wolfram从早期的高能物理研究领域转向了用计算机探索复杂性科学的研究,正是在那个时期,他发表了多篇有关一维细胞自动机理论的论文,而奠定了他在该领域的权威位置。然而,正当他的学术生涯蒸蒸日上的时候,Wolfram毅然辞去了他在伊利诺伊斯大学的教职,原因是当时的大学体制很难专门拨经费支持他在细胞自动机这个“怪异”的领域中的研究。
虽然Wolfram放弃了他辉煌的学术生涯,却开辟了另一片崭新的天空。他于1986年亲手创办了以他自己命名的WolframResearch公司,开始开发著名的数学软件Mathematica,并凭借着该软件的商业成功而成为亿万富翁。然而,就在他商业刚刚成功的时候,他却毅然再次走进了书房,在计算机前摆弄起了计算机程序,因为细胞自动机、复杂性科学对于他来说太诱人了!
就这样,在1991年第二版Mathematica面世的时候,他躲进了书房开始了长达10多年的写作。终于,2002年5月,ANewKindofScience面世了。这本洋洋洒洒的厚达1000多页的大部头创造了多项奇迹:整本书很少看见数学公式,而全部用图形进行科学推理甚至证明;全书分成正文和批注两部分,而批注却占据了1/3的空间;整本书没有参考文献,所有的历史相关工作介绍都放到了批注中;书中提出了很多大胆的猜想,如:我们生活的世界就是一个被计算机模拟出来的世界等等。Wolfram的过火挑衅行为惹毛了美国学术界。然而,这并不影响该书的流行,甚至一跃成为当年亚马逊网站的销量排行首位。
三、什么是Zloker01
很多人都认为,ANewKindofScience就是一个研究细胞自动机的科学。事实上,这种认识是不完全的。如果用一句话概括,那么ANewKindofScience就是一种研究各种“计算宇宙”的科学。而所谓的“计算宇宙”,就是指由各种简单的计算机程序创造的世界。Zloker01的观测以及演算系统也是基于这一理论为雏形并整合了事象变移理论研发的,对于事象变移可以引发另一个问题:世界的存在是必然的还是偶然的?
如果一切都是必然的,人无法决定和改变任何事情,那么事象变移就没有任何意义。同样,如果一切都是偶然的,那么事象变移也将不能确定任何事情,起到任何作用。只有在面对不确定的世界时,事象变移才有作用和能发挥作用。对于整个世界来说,既存在必然也存在偶然,或是整个世界存在是不确定性的。也只有在整个世界存在是不确定性的前提下,人们对于科学、哲学和智慧的讨论才有意义。
整个世界存在是不确定性的,那么一个具体事物存在是否有确定性呢?这个确定性的问题包含了“一”的问题,即:一个具体事物是如何出现的,为什么是一个,而不是两个呢?对于“一”和“二”的解释是唯心主义和唯物主义的发源点。唯心主义的观点是:一个具体事物的出现完全是人的意识决定的;唯物主义的观点是:一个具体事物的出现是物质本质决定的。唯心的观点无法回答:意识做出某种决定是必然的,还是偶然的?显然,坚持唯心主义的观点,那么世界就只能是无法被认识的,或是对世界的认识是毫无意义的。一个无法被认识的世界,对于人来说没有任何意义,所以科学和哲学最后都转向了唯物的对事物“本质”的研究。如何来认识具体事物?在这个问题上,古希腊的“原子论”和古中国的“道论”代表了两种倾向。前一种是通过研究结构组织的方式来认识事物,而后者是通过把握事物与其它事物关系的方式来认识事物。
古中国的“道论”包含了认识事物的思想,却缺少改造世界的理想,最后导致的是思想中庸和文化保守顺应。(注:事象变移理论也是以此为基础而发展出来的。)而西方的科学和哲学从“原子论”出发,一直在寻找“世界的本质”,这种极端认识倾向最后必然导致机械唯物主义和人文理想的消失。
面对万事万物,如何来认识事物间的关系呢?这个问题最后的焦点集中在了事象变移的“观测机制”的形成上。正是由于有“观测机制”的存在,人才能识别和认识具体的事象(注:这里的事象并非泛指事物,还包括之间的关联),生命体全部的智慧都是建立在“观测机制”之上的。能注意到什么和不能注意到什么取决于“观测系统”本身的结构,注意到什么和没有注意到什么则取决于“观测系统”当时的运行状态。在此层面上,我们就可以对通常所说的物质和精神、客观与主观进行清晰的划分了:物质和客观是对事象静态不变的表述,即能注意到什么和不能注意到什么;精神和主观是对事象变化认识的表述,即注意到什么和没有注意到什么。在唯物的物质观中难以回答“物质的运动变化过程是不是物质?一个事物变化了,那么这个事物是原来的事物,还是成为了一个新事物呢?”。现在我们可以回答:物质就是能量周期性的变化过程,精神是对物质变化过程的“反应”过程。物质和精神都是形式,物质是对形式静态的表述,精神是对形式动态的表述。运动变化之后是否变成了新的物质或事物取决于运动变化是否能引起注意系统的改变。对于生命系统来说,在“观测机制”之上还存在一个“行为机制”,即从认识到采取行动的过程。人们通常所说的意识就是对“观测机制”的注意。意识不仅仅是一种机制,也是一种行为。
整个世界存在是不确定性的,但是具体事物存在有确定性。在这一原则中,物质世界和客观世界是必然和有规律的,精神世界和主观世界则是偶然和自由的。物质作为精神的基础,客观作为主观的限制,但是物质无法决定精神的发展,客观也不能决定主观将如何变化。采取的行动会引起“观测机制”的某些改变,这种改变即是精神作用到物质的过程,也是主观改变客观的过程。同时,“观测机制”的存在也反映了,生命系统在变化和被改变着。“为什么改变”取决于主观目的,“如何改变”取决于对客观情况,能在多大程度上改变则取决于系统能量。生命的过程就是一个选择改变的过程。当生命的所作出的选择到最后导致生命不能在做出任何的选择时就是生命过程的终结,生命就消亡了。
生命的过程就是一个选择改变的过程。所谓的“自我”也是正是在选择的意义上来标识的。不论是“自我”的个体,还是“自我”的后代、家庭、民族、种族、国家等都是在基于相同的“选择”上进行标识的。这些选择有基因的选择、行为的选择、信仰的选择、生活方式的选择等。保持“自我”即是作出相同的选择,改变“自我”即是做出不同的选择,Zloker01的最终目的之一也是由无意识到产生自我的演算过程。
但是,做出一个选择可能会带来更多的选择,也可能会导致无法作出更多的选择。面对不确定的世界,无法保证所作出的选择不会导致生命过程的终结。生命个体的死亡,就是选择的错误导致选择过程的终结。所以,发展出尽可能多的个体,拥有尽可能更多的选择是生命存在的本性。自由就是对可能的选择,对自由的追求是生命的本性。要追求更多的自由需要突破物质和客观世界的限制,扩大精神和主观世界,这也是为什么生命系统总在寻求发展和扩张。而理性的发展就是现在的发展能带来将来更多的发展选择,而非理性的发展就是现在的发展会导致将来无法再发展。扩大精神和主观世界的过程就是包容物质和客观世界的过程,也是认识、改造物质和客观世界的过程。在这一过程中,哲学要解决的是“怎样去认识和改造”的问题,科学需要解决的是“采取什么方法可以达到确定的认识和改造目的”的问题。
关于Zloker01的解析先回到原始的二维模型。
1、图灵机
所谓的图灵机就是指一个抽象的机器,它有一条无限长的纸带,纸带分成了一个一个的小方格,每个方格有不同的颜色。有一个机器头在纸带上移来移去。机器头有一组内部状态,还有一些固定的程序。在每个时刻,机器头都要从当前纸带上读入一个方格信息,然后结合自己的内部状态查找程序表,根据程序输出信息到纸带方格上,并转换自己的内部状态,然后进行移动。这是一个具有两个方格颜色、三个内部状态(分别对应了三种不同的箭头角度)的图灵机。第一条规则表示如果机器头当前读入的方格是黑色的,且内部状态为1,那么机器头就把黑色擦去,并且右移一格,内部状态由1转成2……
传统的计算机科学将图灵机视为一种计算的工具,即给图灵机编写适当的规则表让它完成某种计算任务,例如计算1+3。但是在ANewKindofScience中,我们关心的不再是计算任务,而就是观察当给定一组规则后,程序如何行为。也就是说,仅仅关心图灵机在一维纸带上写出的图形。因此,不同的程序在相同的纸带上经过多步计算能够形成非常不同的图形。
在ANewKindofScience中,我们可以把不同时刻的纸带像一维细胞自动机一样排在一起形成一个二维的世界。而机器头可以用一个黑点表示,小黑箭头就是图灵机的读写头,它会在纸带上移来移去画出漂亮的折线。机器头的不同状态对应这个小黑箭头的不同朝向,而机器头遵循的规则就对应了一组图标。因此,给定简单的规则,放手让程序演化,这就是ANewKindofScience研究计算宇宙的方法。
2、替代系统(Substitutionsystems)
另外一种计算机科学中常用的计算模型就是抽象的重写规则系统,例如,重写规则:A-->AB,B-->BA。从一个字符串开始经过反复重写,可以得到非常复杂的字符串。N变化不同的重写规则能够得到不同的Pattern,ANewKindofScience的研究方法仍然是将不同步骤得到的字符串排成一行一行的,每个字符串都转化成不同颜色的方格,于是,我们仍然能得到一些二维的Pattern(构型),
如重写规则可以得到变化不同的重写规则能够得到不同的Pattern。
3、自然数
上面讨论的计算系统都是对一些抽象元素的操作,然而传统数学中的计算则强调的是对数的操作。那么ANewKindofScience能不能讨论对数的运算呢?举个例子,我们从数字1开始,然后用最简单的运算+1进行反复的迭代。显然,我们会得到序列1,2,3,……。这很平淡无奇,但是如果我们把这些数字表示成二进制数,那么我们仍然可以把它们排列成一行一行的方格,其中黑色表示二进制的1,而白色表示0,这样,我们令人吃惊的是,即使这样一个简单的n=n+1的数学操作仍然可以得到一种复杂的自包含的图形结构。所以,新的表达和观察方法往往能够给人们带来意想不到的收获。在ANewKindofScience中,Wolfram研究了各种各样的简单计算系统,然而所有这些研究都是忘记计算系统的意义和任务,因为只有当我们不再让计算机程序硬性的进行某种运算,而就是给它们提供舞台,放手让它们演化,那么,它们才会用各种各样的花纹来表现它们自己的真实本性。
Zloker01的观测系统也是基于这一原理运作的,只是其模拟的并非简单二维图形。当观测系统被使用在真实的三维世界中时,其恐怖的运算量足也让目前最强大的电脑望然兴叹。相信也只有量子计算机或黑洞引擎之类的产物才能胜任吧。
ToBeNext……