为“复杂性”绘制教程:元建模、规则学等

这是我为即将到来的作品所计划的一系列作品中的第一部分20周年的出版一种新的科学

“有一个全新的领域要建立……”

对我这个故事开始于近50年前- 为什么我认为是一个伟大而基本的科学之谜。我们在自然和其他地方看到各种复杂性。但它来自哪里?它是如何制作的?有这么多的例子。雪花。星系。生命形式。湍流。他们都有不同的工作吗? Or was there some common underlying cause? Some essential “phenomenon of complexity”?

1980年,我开始认真研究这些问题。一开始我是这样做的我所知道的主要科学范式:基于数学和数学方程的模型。我研究了人们试图使用的方法。非平衡态热力学。协同学。非线性动力学。控制论。一般系统理论。我想象的关键问题是:“从无序和随机开始,自发的自我组织如何产生我们所看到的复杂性?”因为在某种程度上,我认为复杂性必须作为一种对世界上无处不在的热力学式随机性的过滤而产生。

一开始我没能走多远。我可以写下方程式,做数学题。但当时并没有任何真正的复杂性。但在一段我现在意识到具有重大意义的历史中,我才花了几年时间创建一个大型计算机系统这是我们现代的直接先驱Wolfram语言.所以对我来说很明显:如果我不能用数学解决问题,我应该使用电脑。

除此之外,我所构建的计算机系统是我意识到的一种语言(这是对我在还原物理科学方面的经验的肯定),如果它能够基于尽可能最小的原则和基本元素,那么它将是最强大的。这对语言来说效果很好。所以当涉及到复杂性时,尝试做同样的事情是很自然的。并试图找到最小的,最“元”的模型来使用。

我不知道我需要什么神奇的成分才能达到复杂性。但我想我还是从最简单的开始吧。事情就是这样我开始运行程序后来我了解到这是以前所谓的“细胞自动机”的简化版本。我想不到一个小时,我就意识到一些非常有趣的事情正在发生。我从随机性开始,程序会“自发地”进行生成各种复杂的模式

起初,这是一项实验性工作。我会进行观察,对我所看到的进行分类和分类。但很快我就引进了分析工具——从统计力学,动力系统理论,统计学,等等。和我搞清楚了各种各样的事情.但在一切的中心,仍然有一个关键的问题:我所看到的东西的本质是什么?它是如何与现有科学联系起来的?

我想进一步简化。如果我不是从随机性开始,而是从最简单的“种子”开始呢?很快就出现了像分形这样的图案。但不知为何,我只是假设一个简单的程序,有着简单的规则,从一颗简单的种子开始,并不具备创造“真正的复杂性”的条件。我有打印输出(是的,那时候它仍然是这样工作的),表明这不是真的。但在过去的几年里,我对它们视而不见。

30规则

然后在1984年,我做了第一个规则30的高分辨率图片.现在我无法摆脱它:一个简单的规则和简单的种子正在制造一些看起来极其复杂的东西。但真的有那么复杂吗?或者是否存在某种神奇的分析方法,可以立即“破解”它?我找了好几个月。从数学。数学物理。计算理论。密码学。但我什么也没找到。

慢慢地,我开始意识到我曾经我的直觉根本就错了.在简单程序的世界里——或者至少是细胞自动机——复杂性其实很容易实现。这真的是大自然一直以来用来制造复杂性的秘密吗?我开始认为这至少是其中的一个重要部分。我开始联系具体的例子水晶生长流体流动生物类型和其他的地方。但我也想了解事情的基本原理。

简单的程序可以产生复杂的行为。但是为什么呢?没过多久我就意识到一些基本的东西:这其实是一种计算现象。这不是用数学就能轻易看出的东西。它需要一个不同的思考方式.一种基本的计算方法。

起初,我以为把一个程序作为某种东西的模型本质上只是一种方便。但我意识到事实并非如此。我意识到,计算模型是一种全新的东西,有自己的概念框架、特点和直觉。举个例子,我意识到他们的表现我称之为新的中心现象计算不可约性

几个世纪以来,精确科学的传统和抱负一直是预测数字,以说明一个系统将做什么。但我意识到,在大多数简单程序的计算世界里,你不能这么做。即使你知道一个系统的规则,你仍然可能需要做大量的计算工作来弄清楚它将做什么。这就是为什么它的行为看起来很复杂。

到1985年,我知道了这些事情。我对它们的意义感到非常兴奋。我是通过尝试解决“复杂性问题”才走到这一步的。把现在可以做的事情标上"复杂系统理论:一种系统理论,显示出复杂性,甚至从简单的规则。

因此,在1985年,我开始推广“复杂系统研究”这个新领域的想法,或者简称为“复杂性”——这是受到我对细胞自动机等事物的发现的推动。

现在我对历史有了更多的了解,我意识到我想做的事情有明确的先兆,特别是从20世纪50年代开始。因为那是计算概念首次被提出的时期——通过控制论和人工智能这一新兴领域,人们开始探索计算思想更广泛的科学含义。但随着与我几十年后发现的现象毫无关联在美国,这似乎并没有太大的希望,大部分努力都被放弃了。

然而,到了20世纪70年代末,又出现了其他的倡议,尤其是来自数学和数学物理。其中包括分形理论、突变理论和混沌理论。每一个都以不同的方式探索了某种形式的复杂性。但在某种意义上,所有这些方法都是在传统数学思想的“安慰”下运行的。虽然他们将计算机作为实用工具,但他们从未将计算视为思考科学的核心范式。

那么,我在1985年倡导的“复杂系统研究”后来怎么样了?现在已经36年了。职业生涯来来去去。几代学者已经过去了。有些事情发展得很好。有些事情发展得不太好。

但就我个人而言,我知道的比当时多得多。对我来说,我在20世纪80年代早期的工作是整个科学技术塔的基础,从那时起,我花了一生的时间来建造这个塔,最近的高潮是我们的Wolfram物理项目在过去的几周里,我称之为multicomputational范式

在这36年里,我所学到的任何东西都没有削弱第30条规则的力量和美感,以及那些关于复杂性的早期发现。但现在我有了更多的背景,一个更大的概念框架——从这个框架中,我们有可能看到更多关于复杂性及其在科学中的地位和潜力。

早在1985年,我几乎是一个孤独的声音,表达了研究科学复杂性的潜力。现在,世界上大概有一千个名义上专注于复杂性的科研机构。我在这里的目标是分享我所学到的,以及在复杂性的旗帜下可以做什么。

有令人兴奋和惊奇的事情。有些我在20世纪80年代就已经开始思考了。但是,由于围绕着我们的物理项目及其发展出来的形式主义的最新进展,其他的项目才成为焦点——甚至变得可以想象。

一种新型科学的出现

早在1985年,我就对发展复杂系统研究领域的潜力感到非常兴奋。似乎有一个广阔的新领域突然被科学探索所利用。在这本书中,我看到了许多伟大的科学可以被实现,也看到了许多人可以获得的伟大机遇。

我自己仍然只有25岁。但我有一些组织经验,都是领导研究小组,并开始我的第一家公司。我设置了应用我所知道的复杂系统研究。到了第二年,我创立了第一个研究中心和该领域的第一个期刊(复杂的系统, 35年过去了,依然很强大)。(我也做过类似的事情这表明“复杂性”成为了圣达菲研究所的主题.)但不知怎么的,一切都移动得很慢。

尽管我做了很多努力,复杂系统的研究还没有出现。这不是大学里教的东西;这不是一个需要资金的类别。这一领域出现了一些应用。在这些应用的背景下,将其硬塞进某些现有领域的压力是巨大的。是的,它可能不得不采用其“宿主”区域的方法。但至少它会有个家。但它真的不是物理、计算机科学、数学、生物学、经济学或任何已知领域。至少就像我想象的那样,它是一个独立的东西,有它自己的,新的,新兴的方法。这就是我真正认为应该发展的。

我很不耐烦。1986年底,我决定了最好的道路只是为了尝试自己做到 - 并为此设置最好的工具和最佳环境。结果是Mathematica(现在是Wolfram语言),以及沃尔夫勒姆研究.几年来,创建这些完全消耗我的任务。但1991年,我回到了基础科学,并在五年前休息的地方持续。

那是一段激动人心的时光。我很快发现,我在细胞自动机中发现的现象相当普遍。我探索各种各样的规则和程序,总是试图理解他们所做的事情的本质。但每次我发现的核心现象都是一样的。计算不可约性——就像我第一次在细胞自动机中看到它时一样出人意料——无处不在。我很快意识到,在我所看到的背后,有一个深刻而普遍的原则,我称之为计算等价原则-我现在认为是我们所知道的计算宇宙中最基本的东西。

但是这些关于简单程序和计算宇宙的发现适用于什么呢?我最初的目标是观察自然界中可以立即观察到的现象。我不知何故认为进化适应数学证明就不在这个范围内了。但随着时间的流逝,我意识到计算等价原理的力量比我想象的要大得多,而且它也包含了这些东西。

细胞自动机与复杂性

上世纪90年代,我一直在探索计算世界及其应用,并就我的发现稳步地写了一本书。一开始,认识到我最初的目标,我给这本书取名复杂性的科学.但到20世纪90年代中期,我已经意识到,我正在做的事情超越了了解复杂性现象的具体目标。

相反,我所做的核心是引入一种全新的科学,基于一种新的范式,本质上就是我现在所说的计算范式。三个世纪以来,理论科学一直被用数学方程描述世界的理念所主导。但是现在有了一个新的想法。这个想法不是解方程,而是建立计算规则,可以显式地运行来表示和再现世界上的事物。

三个世纪以来,理论模型一直建立在数学方程,尤其是微积分,提供的相当狭窄的结构上。但现在,可能的程序和规则的整个计算宇宙被打开,作为制作模型的原材料来源。

但随着这种新力量的出现,人们也清醒地认识到这一点。在不受限制的计算宇宙中,计算不可约性无处不在。所以,是的,现在有一种方法可以为很多东西创建模型。但要想弄清楚这些模型的结果,可能需要进行不可简化的计算工作。

如果没有计算范式,显示出显著复杂性的系统似乎很难被科学所理解。但现在有了一种潜在的方法来为它们建模,并成功地再现它们行为的复杂性。但计算上的不可约性是它们的全部,从根本上限制了对它们行为的预测或理解。

一种新的科学

十多年来,我一直在研究这些想法的含义,不断惊讶于它们似乎能解决各种领域的许多基础问题。特别是考虑到我开发的工具和技术,我认为我在我所做的研究中变得相当有效率。最终在2002年,我决定“摘取所有容易摘到的果实”,是时候出版我的巨著了,书名——我认为是以它的主要思想主旨命名的——一种新的科学

这本书是关于简单程序及其功能的纯基础科学,以及从研究这些程序中推导出的原理的讨论,以及在特定领域的应用。如果最初的问题是“复杂性从何而来?”我觉得我已经基本掌握了这一点——这本书现在是一个探索,在一门科学中,从简单到复杂的出现只是一个更深层次的概念的特征,即引入计算范式作为一种新的科学类型的基础。

我付出了巨大的努力,使书中的阐述(文字和图片)尽可能清晰,并将其与上下文联系起来广泛的历史研究.一般而言,所有这些努力都非常出色,允许书的信息达到非常广泛的受众。

人们从这本书中学到了什么?一些人对它的新范式感到困惑(“所有的方程式在哪里?”)有些人认为这有点神秘新形式和结构的井铺(“那些都是很棒的照片!”)但是,许多人在书中看到的是长达一千页的证据,证明简单的程序和计算规则可以成为科学模型和思想的丰富而成功的来源。

很难追踪到确切的影响链。但在过去的二十年里,发生了一场引人注目的——如果说有些沉默的话——转变。三百年来,科学中的严肃模型基本上都是基于数学方程。但在短短20年的时间里,一切都改变了——现在绝大多数的新模型不是基于方程,而是基于程序。这是一个戏剧性的、重要的范式变化,其影响才刚刚开始被人们感受到。

但是复杂性呢?在过去,从模型中“获得复杂性”总是一个挑战。现在有了计算模型,就变得非常容易了。复杂性已经从神秘的、遥不可及的东西变成了无处不在的、司空见惯的东西。但这对“复杂性研究”意味着什么呢?嗯,这是一个相当复杂的故事....

“复杂性”的增长

从1984年到1986年,我致力于提出和推广“复杂系统研究”的理念。但是当我在1986年离开这个领域,专注于技术的时候,我并没有看到这个想法有多大的吸引力。然而,十年后,情况完全不同了。我自己也在默默努力一种新的科学.但在其他地方,我对复杂性的“营销信息”似乎已经扎下了根,一些复杂性研究机构开始在各地涌现。

人们所说的“复杂性”到底是什么意思?对不同的人来说,它往往有不同的含义。有时它只是指“在我们的领域里我们还没有弄清楚的东西”。更多时候,它指的是“看起来很基本,但我们还没弄明白的东西”。通常会出现一些可视化组件:“看看这个情节看起来有多复杂!”但是,无论它对不同的人意味着什么,“复杂性”无疑正在成为一种流行科学的“品牌”,有很多人渴望与它联系在一起——至少给他们多年来一直从事的工作带来一种新的现代气息。

虽然人们很容易对此持怀疑态度,但它有一个非常重要的积极后果:“复杂性”成了跨学科工作的旗帜。随着科学变得越来越大、越来越制度化,它不可避免地变得更加孤立,同一所大学不同院系的人通常甚至从未见过面。但现在,各行各业的人都可以说,“是的,我们在我们的领域遇到了复杂性”,以复杂性为旗帜,他们现在有理由联系起来,甚至可能一起成立一个研究所。

那么到底做了什么呢?其中一些我可以总结为“是的,它是复杂的,但我们可以从中找到一些数学上的东西”——一个典型的概念是追求某种幂律公式。但更重要的是,它开始真正采用计算范式——典型的推动力是“我们可以编写一个程序来重现我们所看到的东西”。

其中一种强大的感觉是,即使是在像社会科学这样的领域,以前并没有比“口头”模型更多的模型,现在似乎有可能得到至少看起来更“科学”的模型。有时这些模型是纯经验的(“看,这是幂次定律!”)。有时它们基于构建程序来再现行为。

成功的定义经常有一点可疑吗然而,。是的,有一个程序可以显示你所看到的系统的一些特征。但是这个程序有多复杂呢?有多少是直接投入到项目中去的?对于数学模型,人们早就熟悉“模型有多少参数?”这样的问题。但当涉及到程序时,有一种趋势是只投入越来越多的东西,而不做太多的核算。

还有就是复杂性的问题。假设一个人试图建模的东西显示了复杂性。然后通常的想法似乎是,为了摆脱复杂性,有必要以某种方式在模型中有足够的复杂性。当复杂性出现时,人们会觉得这是一种胜利,证明模型在正确的轨道上。

但实际上,正如我在研究简单程序的计算宇宙时发现的那样,这根本不是正确的直觉。因为它根本没有考虑计算的不可约性。既然计算的不可约性是普遍存在的,我们就知道复杂性也是如此。并不是某些特殊的或“在正确的轨道上”的东西使模型产生复杂性;相反,产生复杂性只是一个非常广泛的计算模型自然会做的事情。

尽管如此,复杂性的一般领域和品牌继续获得吸引力。早在1986年复杂的系统是唯一一本致力于复杂系统研究的杂志。到2010年代末,该领域有数十种期刊。我最初从20世纪80年代开始推动复杂性研究的努力,在一个已经成长起来的“复杂性产业”面前,已经完全相形见绌。但看看我们所做的一切,我觉得我们缺少了一些重要的东西。是的,有这么多的“复杂性活动”是很棒的。但它给人的感觉是分散的、不连贯的——而且没有一条牢固的共同线索。

回到复杂性的基础

在复杂性的旗帜下,我们已经做了大量的工作。但它们是如何组合在一起的呢?它的智力基础是什么?学术界的动态已经导致大多数正在进行的复杂性研究活动都是关于特定领域的特定应用,而不是真正关注基础科学可能隐藏在什么之下,以及“复杂性的基础”可能是什么。

但基础科学的巨大力量在于它带来的规模经济。找到一个基础科学的原理,它可以为大量不同的具体应用提供信息,否则每个应用都必须各自探索。学习基础科学的一个原理,你马上就会知道一些东西,这些东西包括了你本来要单独学习的所有特定的东西。

那么复杂性呢?在所有这些细节之下,是否有一些东西可以被看作是连贯的“复杂性的基础科学”——比如“复杂性基础”课程的原材料?一开始,在哪里寻找这个可能并不明显。但马上就有了一条大线索。从某种意义上说,这是过去几十年复杂性研究中最大的“元发现”:在所有类型的系统中,计算模型都能工作。

这就引出了一个问题:什么是计算模型或一般计算系统的基础科学?但这正是我在简单程序的计算领域所做的工作——以及我的书一种新的科学——有关。它们是关于计算宇宙的核心基础科学,以及它所涉及的原则——从某种意义上说,是计算的基础科学。

顺便说一下,把它和计算机科学区分开来是很重要的。计算机科学是关于我们人类为特定目的而构建的程序和计算。但是,我们需要的基础科学是关于“野外”的程序和计算,以及关于在计算宇宙中普遍存在的东西,与我们人类是否有理由构建或使用它无关。

这是一种非常抽象的东西。它就像纯数学一样,可以完全独立地进行研究,而不需要参考任何特定的应用。事实上,与纯数学的类比是恰当的。因为就像纯数学在某种意义上是数学科学和代表世界的整个数学范式的抽象基础一样,因此,现在我们计算的基础科学是抽象的基础,它是用来表示世界的计算范式——以及从它流出来的所有“计算X”领域。

所以,是的,复杂性是一门核心的基础科学。它也是计算的基础科学。通过研究这个,我们可以把在不同系统的复杂性研究中出现的各种看似不相干的问题放在一起。无论我们将会看到计算不可约性.无论我们将会看到内在随机性的一代.我们到处都能看到计算等价原则.这些都是来自纯粹基础科学的一般抽象的东西。它们是复杂性研究的智力基础——“复杂性的基础”。

元模型和模型的元理论

元建模

我曾经参加过一个复杂的会议,和一个模仿鱼和它们行为的人交谈。那个人骄傲地给我看了他的模拟鱼缸。“这涉及多少参数?””,我问。“大约90岁,”他说。“我的天哪”,我说,“有这么多参数,你也可以把大象放进你的鱼缸里!”

如果想要制作一个模拟的鱼缸显示器,让人们观看,那么拥有所有这些参数可能就可以了。但如果你想了解鱼的科学,它就没那么有用了。的鱼有不同的形状.鱼以不同的形态游动。导致我们所看到的东西的核心是什么?

要回答这个问题,我们必须深入研究:我们必须找到鱼形精或鱼的行为。

一开始,如果面临复杂性,我们可能会说:“这是没有希望的,我们永远也找不到发生的事情的本质——它太复杂了。”但重点是,我们知道,在可能的程序的计算宇宙中,实际上有一些简单的程序,其规则很简单,却导致了巨大的复杂性。所以,尽管我们看到的行为非常复杂,但在它的下面仍然有一些简单和可理解的东西。

从某种意义上说,研究现象并深入寻找其根本原因的概念是还原论科学的核心。但就像传统的做法一样,它依赖于能够通过“向下钻”过程看到自己的方式,或者实际上,明确地做逆向工程。但是计算范式的一个重要教训是计算不可约现象——规则和它们产生的行为之间可能存在“不可约距离”。

然而,这是一把双刃剑。是的,很难深入研究计算的不可约性。但最终,隐藏的细节可能不那么重要;人们看到的主要特征可能只是计算不可约现象的一般反映。

然而,对于特定的应用程序来说,底层模型(或它们的解释)的结构特征通常是重要的。是在二维网格上处理东西吗?系统中是否存在非局部效应?系统的状态有方向性吗?等等。

如果你看看关于复杂性的文献,你会发现各种系统的各种模型。就像鱼的例子一样,这些模型通常是非常复杂的。但问题是:是否隐藏着更简单的模型?模型足够简单,人们至少可以很容易地理解它们的基本规则和结构。模型足够简单,以至于它们也可能对其他系统有用。

从某种意义上说,寻找这些东西是一种可以称为“元建模”的练习:试图为一个模型建立一个模型,进行还原主义科学,不是基于对世界的观察,而是基于模型的结构。

当我第一次致力于复杂的问题时,我所做的一件主要事情是一块元素。我正在寻找各种现象的模型,从雪花增长到自我引力的气体到神经网络。但我所做的就是试图识别一个涵盖所有这些的“Metamodel”。我想出的是简单的蜂窝自动机(顺便说一下,不要涵盖我一直在看的一切,但无论如何都变得非常有趣)。

当我现在思考这个问题时,我意识到元模型的活动在科学领域并不常见。(在数学中,人们可能会说分类这类事情有点类似。)但对我个人来说,元建模似乎是非常自然的,因为它非常像我做了很长时间的事情,那就是语言设计。

是什么参与语言设计?您从整个计算集中开始,以及如何执行它们的描述。然后您尝试钻取以识别一小组基元,让您方便地建立这些计算。就像Metomodeling一样,关于删除模型的所有“毛茸茸”部分以获得最小的,原始形式,所以语言设计也是为了计算计算和计算结构。

在这两种情况下,都有一定的艺术。因为在这两种情况下,那些最小形态的消费者都是人类。对人类来说,它们需要看起来“简单”和可理解。简单的一些实际定义与历史有关。例如,什么已经变得熟悉,或者有词语来形容?有些更多的是关于人类的感知。我们的视觉处理系统可以很容易地吸收什么东西?

但一旦人们发现了最小的东西,它的巨大价值就在于它往往是非常普遍的。一个详细的“毛茸茸的”模型往往具有特定于某个系统的所有类型的特征,而一个简单的模型往往适用于所有类型的系统。因此,通过进行元建模,并找到最简单的“公共”模型,我们可以有效地获得具有最大影响力的东西。

在过去的四十年里,我在细胞自动机中看到了非常显著的这一点。细胞自动机在某种意义上是最小模型,其中空间和时间有一个确定的(离散的)结构,每个离散细胞有有限数量的状态。有多少不同的系统可以成功地用细胞自动机建模,这是很了不起的。举个例子256个最简单的二色近邻一维规则在美国,相当一部分人已经在某个地方找到了应用程序,许多人已经找到了几个(通常是完全不同的)应用程序。

我不得不说,我在过去并没有明确地认为自己在追求“元建模”(而且我刚刚发明了这个术语!)但我相信这是一个重要的技术和想法。它可以“挖掘”复杂性工作的具体建模成就,并将它们带到更广泛和更基础的水平。

一种新的科学我编目并研究了许多类型的最小型号。在二十年之后一种新的科学完成时,我只看到了少量的新最小模型(尽管我还没有用元建模现在带来的关注点来寻找它们)。但最近,我有另一个主要的例子,我现在称之为元建模。为我们的物理项目我们开发了一个特殊的基于多路超图重写的一类模型.但我最近意识到这里有元建模要做,其结果是一般的概念多计算和多计算模型

回到复杂性,你可以想象把该领域的所有学术论文都拿出来,识别它们使用的模型,然后尝试进行元建模,对这些模型进行分类和归纳。我经常怀疑,最终得到的最小模型类将是我们已经见过的类(例如,出现在一种新的科学).但偶尔它们也会是新的:从某种意义上说,建模语言的新原语,以及复杂性研究的新“元科学”输出。

规则学的纯粹基础科学

Ruliology

如果一个人建立了一个系统来遵循一套特定的简单规则,这个系统会做什么?或者,换句话说,在可能的程序的计算宇宙中,所有这些简单的程序是如何表现的?

这些都是基础科学中纯粹抽象的问题。当一个人在我描述的计算范式中操作时,他们会问这些问题一种新的科学.但在某种程度上,它们是关于抽象规则(我们可以称之为程序)的具体科学的问题。

那是什么科学?它不是计算机科学,因为它是关于我们为特定目的而构建的程序,而不是那些“在计算宇宙的野外”的程序。这不是数学,因为它是关于“观察规则的作用”,而不是寻找可以证明事物的框架。最后,很明显,这实际上是一门新的科学,内容丰富,涉及面广,而且我,至少,有幸从事了40年。

但这门科学应该叫什么呢?几十年来,我一直在思考这个问题。我写了那么多可能的名字。它会基于与规则相关的希腊或拉丁单词吗?这些都是拱,雷格-:非常畅销的根。那么与计算相关的单词呢?那太罗技-calc -.这些似乎都不起作用。但是,在类似于元建模的过程中,我们可以问:我们想要用语言表达的东西的本质是什么?

这都是关于研究规则,以及它们的后果。那么,为什么不是简单而明显的“规则学”呢?是的,这是一个听起来有点不寻常的新词。但我认为它很好地传达了我长期以来喜欢的科学。就我个人而言,我很乐意称自己为“规则学家”。

但是规则学到底是关于什么的呢?这是一门纯粹、基础的科学,而且非常清晰、精确。这是关于建立抽象的规则,然后看看他们做什么。没有“回旋余地”。“再现性”没有问题。你运行一个规则,它就会做它该做的事。每次都一样。

是什么规则73细胞自动机从单个黑细胞开始做?一些什么特定的图灵机做?有什么特别的多路字符串替换系统?这些都是规则学的具体问题。

一开始你可能只是做计算,并将结果形象化。但也许你注意到了一些特殊的特征。然后你可以使用任何方法来得到一个特定的规则学结果,例如,在规则73模式中,黑色单元格只出现在奇数长块中

规则学倾向于从具体规则的具体案例开始。然后它进行了概括,针对某一特定规则,或整个类别的规则,考察了更广泛的情况。它总是有具体的事情要做——形象化的行为,测量特定的特征,等等。

但是规则学很快就与计算的不可约性面对面了。某一特定规则的特定案例最终会怎样?这可能需要大量的计算工作来发现——如果一个人坚持知道什么等于一个真正的无限时间的一般结果,它可能在形式上是不可确定的。同样的道理也适用于不同的规则。有这样的案子吗?或者有什么规则吗?

对我来说显着的 - 甚至在统治40年后 - 也是有多少惊喜结束了。你有一些特殊的规则。它看起来好像只是以某种特定方式行事。但是没有,最终你在那里做出了完全不同的事情和意外的情况。而且,是的,这实际上是计算不可达到一个人看到的东西。

有时我觉得规则学一开始有点像自然史。你正在探索简单程序的世界,发现其中存在着什么奇怪的生物,并捕捉它们进行研究。(是的,在实际的生物自然史中,人们所看到的多样性的核心大概与我们在抽象规则学中所看到的计算现象完全相同。)

那么规则学是如何与复杂性联系起来的呢?这是研究复杂性基础的核心部分,事实上也是最基本的部分。规则学就像是研究复杂性的终极源头。以及复杂性是如何从最简单的源头产生的。

规则学是用来建立模型的原材料和直觉。它向我们展示了在计算宇宙中什么是可能的,以及我们可以用什么来建模和理解我们研究的系统。

在元建模中,我们将从已经构建的模型开始,并深入观察它们下面的内容。在规则学中,我们在某种意义上走的是另一条路,从最小的基础开始构建,看看会发生什么。

在某些方面,规则学就像自然科学。它把计算宇宙看作是对自然的抽象模拟,并研究事物在其中是如何工作的。但在其他方面,规则学比自然科学更具生成性:因为在科学本身,它不仅思考是什么,还思考什么可以抽象地生成。

从某种意义上说,规则学从一开始就是一门实验科学,从某种意义上说,规则学从一开始就是一门抽象的、理论性的科学。它是实验性的,因为它通常只关心运行简单的程序,看看它们能做什么(一般来说,计算不可约性表明你通常不能做得更好)。但从某种意义上说,它是抽象的和理论性的,因为它运行的不是自然界中某些真实的东西,包括所有的细节和近似值,而是完全精确的,定义的和计算的东西。

像自然科学一样,规则学从观察开始,然后建立理论和原则。很久以前,我发现了一个元胞自动机的简单分类(从随机的初始条件开始)-在某种程度上让人联想到识别固体、液体和气体,或不同的生物界。但除了这些分类之外,还有更广泛的原则——我认为最重要的是计算等价原则

研究规则学的日常课程并不要求直接涉及整个计算等价原则。但在整个规则学中,这一原则在指导直觉方面是至关重要的,并对期待什么有一个想法。顺便说一下,我们可以从规则学中得到证据(比如110规则的普遍性,以及2、3图灵机)对于原则的广泛有效性。

我研究规则学(虽然不是这个名字)已经有四十年了。我已经做了很多了。事实上,这可能是我在科学研究中最常用的方法。这让我理解了复杂性的起源,首先是细胞自动机。这让我形成了总体思路一种新的科学.这给了我直觉和动力启动我们新的物理项目

我发现规则学非常优雅,令人满意。这是一种非常唯美的东西——至少对我来说是这样——仅仅看到简单规则的作用是多么纯粹。(而且它们常常能拍出非常令人愉悦的画面,这一点也不碍事。)当一个人可以从如此少的事情中得到如此多的事情时,这也是令人满意的——而且是通过在电脑上运行一些东西而自动做到的。

我也喜欢规则学的基本持久性。如果一个人在处理某种类型的最简单的规则,它们不仅是现在的基础,而且是永远的基础。它就像简单的数学结构——就像二十面体。古埃及有二十面体的骰子。但当我们今天发现它们时,它们的形状似乎仍然很现代——因为二十面体是基本的和永恒的东西。就像规则30模式或规则学中无数的其他发现一样。

从某种意义上说,最令人惊讶的是,规则学是一个相对较新的活动。但是当我编目中一种新的科学它的祖先可以追溯到几百年甚至几千年前。但是没有整个范例一种新的科学,没有上下文来理解为什么规则学如此重要。

那么,好的规则学是由什么构成的呢?我认为这一切都是关于简单和最小化。最好的规则学发生在元建模完成之后——并且真正处理的是某些特定类型的最简单、最最小的规则类。在我努力研究规则学的过程中,比如一种新的科学在美国,我希望能够通过明确的图表“解释”我所使用的规则,如果可能的话,不需要任何文字。

然后,重要的是要尽可能明确地展示规则的作用。有时——比如在细胞自动机中——可以使用非常明显的视觉表示。但在其他情况下,找到一些尽可能明确的可视化方案是很重要的,这既能显示正在发生的事情的整体,又不会引入干扰或任意的额外元素。

令人惊讶的是,在做规则学的过程中,我经常会制作一组特定规则行为的缩略图。再强调一次,它的显性很重要。是的,人们经常想要做各种各样的过滤,比如规则。但最后我发现,人们只需要看看发生了什么。因为这是成功地注意到意外的唯一方法,也是在可能规则的计算宇宙中获得不可简化的复杂性的唯一方法。

当我看到那些报告相当于规则学的论文时,我总是喜欢有露点图片的文章。如果我看到的都是正式的定义,或者是带有曲线的图,我会很失望。这是计算不可约性不可避免的结果,在做好的规则学时,人们必须更明确地看问题。

作为一个研究领域,规则学的伟大之处在于探索新领域是多么容易。计算宇宙包含了无限多的可能规则。即使在人们可能认为“简单”的问题中,也不可避免地有许多在任何人类规模上的问题。但是,好吧,如果一个人探索某个特定的规则系统,它会怎么样?

这有点像化学研究某些特定分子的性质。在探索某些特定的规则时,你可能会幸运地遇到一些新的现象,或理解一些新的一般原理。但你知道你要做的是系统地增加规则学的知识。

为什么这很重要?首先,ruliology提供了制作模型的原材料,所以实际上您是在为一些潜在的未来模型创建模板。此外,当涉及到技术时,我已经相当广泛地讨论(和使用)的一个重要方法涉及“挖掘”计算空间以获取“技术上有用的”程序。好的规则学对于帮助实现这一目标至关重要。

这有点像在物质世界中创造技术。例如,对液晶的良好物理和化学研究是至关重要的。因为这使得它们能够被识别并用于制作显示器。

除了模型和技术的“实用主义”价值外,规则学的另一项工作是提供“经验的原材料”,以建立关于计算宇宙的更广泛的理论。当我发现计算等价原理时,这是我多年来对特定类型规则的详细规则学研究的结果。好的规则学是准备和分类例子,从这些例子中可以取得理论进展。

值得一提的是,人们有一种倾向,想要用数学等方法“确定规则学”。有时候,我们可以用一些离散数学来总结规则学的结果。但值得注意的是,数学往往很快就会失控,即使是一个非常简单的规则也只能让行为失控被大量晦涩的数学所俘获.当然,这在某种意义上只是计算的不可约性。并表明数学不是我们要使用的方法论,相反,我们需要一些新的东西。这正是规则学的用武之地。

我花了很多年定义我现在称之为规则学的特点和主题。但我也做了其他的事情,那就是建立一个巨大的实用技术塔来实际研究规则学。它花了四十多年的时间才建成现在的全面的计算机语言这是Wolfram语言.但在那段时间里,我一直在用我们建造的东西做规则学。

Wolfram语言对于许多事情都是伟大和重要的。但说到规则学,这简直是天作之合。当然,它有很多相关的内置功能。如可视化、图形操作等,以及对系统的即时支持蜂窝自动机替换系统图灵机.但更重要的是,它的基本符号结构为它提供了一种显式的方式来表示和运行任何计算规则。

在进行实际的规则学探索时——例如搜索计算宇宙——对诸如此类的事情有即时支持也是很有用的并行计算.但是Wolfram语言的另一个重要的方面是做实用的规则学的概念笔记本和可计算的文档.笔记本允许人们组织研究过程和结果的演示。

我一直积累研究笔记本电脑关于30多年来的规则学——文本注释、行为图像和代码。这是一件伟大的事情。因为Wolfram语言(及其笔记本格式)的稳定性意味着我可以立即回到30年前做的事情,运行代码,并在它的基础上进行构建。说到展示结果,我可以计算的文章,在笔记本中创建的,其中博览会的任务是在文本,图片和计算语言代码之间共享。

在基于数学范式的传统技术论文中,陈述的正式部分通常会使用数学符号。但是对于规则学(对于“计算X”字段),我们需要的是计算符号,或者说是计算语言——这正是Wolfram语言所提供的。在一篇好的规则学(以及规则学的展示)中,符号应该是简单、清晰和优雅的。因为它是用计算机语言写的,它不仅仅是人们阅读的东西;它也可以立即执行或集成到其他地方。

规则学的未来应该是什么?这是一个巨大的、开放的领域。中有很多职业,和巨大数量的论文和论文和书籍,可以编写将建立一个知识的进步不仅仅是纯粹的,基础科学的计算宇宙也流的所有科学和技术。

哲学与复杂性的基础

复杂的现象应该如何影响一个人的世界观,以及一个人对事物的一般思考方式?这有点像坐过山车。当第一次面对一个系统的复杂性时,人们可能会认为“这似乎没有任何科学可言”。但是,经过一番努力,可能会发现“深入挖掘”并找到系统的基本规则是可能的,而且它们甚至可能非常简单。那时我们可能会想“好吧,科学已经解决了这个问题”——我们已经解决了它。

但这忽略了计算不可约性.计算的不可约性意味着,即使我们可能知道潜在的规则,但这并不意味着我们一定能“科学地预测”系统将做什么;相反,它可能需要大量的计算工作来计算出它。

是的,您可能有一个正确捕获系统底层规则的模型,甚至解释了系统行为的总体复杂性。但这绝对不意味着你可以成功地对系统的运行做出具体的预测。因为计算的不可约性阻碍了这一过程,本质上是“从内部蚕食科学的力量”——这是一个关于基于计算范式的系统如何典型表现的不可避免的正式事实。

但在某种意义上,即使是计算不可约的现象,甚至更甚计算等价原则-给我们推理和思考的方法。这有点像在进化生物学或经济学中,有些原则并没有明确定义预测,但确实给了我们推理和思考事物的方法。

那么计算不可约性的概念和哲学结果是什么呢?它做的一件事是解释世界上普遍存在的明显的随机性,并说明为什么它必须发生——或者至少必须被像我们这样的计算有限的观察者感知到。它的另一个作用是告诉我们一些事情关于自由意志的认知.即使系统(如美国人类)的基础规则是确定性的,也可能存在不可避免的计算不可缩短的层,这使得系统似乎似乎似乎是“自由”的计算界限观察者。

元建模和规则学实际上是处理复杂性现象所需的传统科学的延伸。但是哲学的延伸呢?

要做到这一点,我们不仅要思考复杂性的现象学,还要真正思考复杂性的基础。这就是我认为人们不可避免地会遇到整个计算范式的地方,以及它所有的智力含义。所以,是的,有一个“复杂性哲学”,但它实际上是“计算范式哲学”。

我开始探索这个问题接近尾声一种新的科学.但还有很多事情要做,这是可以通过对复杂性基础的认真研究来实现的。

多重计算与可约性的(意外)回归

计算不可约性是一种非常强烈的现象,在某种意义上,它遍及计算宇宙。但是在计算的不可约性中,总要有计算的可约性的口袋或切片:一个系统的某些方面可以被简化描述。举个例子,在研究规则学的时候,一部分的工作是对计算的可约性进行分类。

但是在典型的规则学中——或者,例如,可能程序的计算宇宙的随机抽样——计算可约性充其量只是一种分散的现象。这不是指望能看到的东西。但当我们思考我们的宇宙和我们对它的体验时,这就有点让人困惑了。因为也许关于我们的宇宙最惊人的事实——事实上也是导致我们通常称之为科学的可能性的事实——是宇宙中发生的事情是有秩序的。

然而,即使宇宙最终按照简单的规则在最低的层次上运行,我们可能会认为,在我们的层次上,我们所看到的只是猖獗的计算不可约性。但在我们18l18luck新利 有一个大惊喜。因为从我们使用的模型的结构来看,似乎在所有计算的不可约性中,我们总是能看到某些可约性的片段——这些片段最终符合已知的主要物理定律:广义相对论和量子力学。

更仔细的检查表明,挑选出这种计算可约性实际上是两件事的结合。首先,底层模型的某种通用结构。第二,我们作为系统观察者的某些普遍特征。

在通常的计算范式中,人们会想象依次应用的规则,以确定系统的状态应该如何随时间发展。但是我们的物理项目需要一个新的范例,我最近把它叫做multicomputational范式其中,一个系统可能有许多可能的状态,在许多可能交织的时间线上有效地演化。在计算范式中,人们总是可以识别经过一定数量的进化后所达到的特定状态。但在多计算范式中,需要观察者来定义如何从所有可能的时间线索中提取“可感知的状态”。

在多计算范式中,所有时间线索上的实际演化将显示出各种计算不可约性。但是,像我们这样的观察者所感知到的,却使这一切变得“平滑”了。而剩下的是一些反映多重计算规则的核心结构的东西。这证明了一些涌现的“类似物理学的定律”。

这都是元建模的重要部分。我们从一个旨在捕捉基础物理的模型开始。但我们已经能够“深入”,找到最基本的“原始结构”,这就是多重计算的想法。只要有多重计算发生,我们就可以预期会有计算可约性和突现物理定律,至少对某些观察者来说是这样。

那么这与复杂性有关吗?嗯,当系统从根本上遵循计算范例 - 用标准计算模型 - 他们倾向于显示计算不可制定和复杂性。但是,如果他们遵循多表型范式,那么就会发现在他们身上的紧急法律。

各种领域比如经济学、语言学、分子生物学、免疫学等等——我最近开始怀疑,在这些领域可能会有好的多计算模型。是的,在这些领域,复杂性有待观察。但多计算范式表明,也将存在明确的规律和涌现的定律。所以从某种意义上说,从“复杂之中”必然会出现某种简单。因此,如果一个人“观察到正确的事情”,他就有可能发现相当于“普通科学定律”的东西。

在这个复杂的故事中,这是一个奇怪的转折,而我,作为一个人,没有预见到它的到来。早在20世纪80年代初,当我第一次从事复杂性研究时,我曾谈到寻找“复杂性的科学规律”。在某种程度上,计算不可约性和计算等价原理是非常普遍的定律,这些定律一开始让人很惊讶。

但我们发现,在多计算范式中,还有另一个惊喜:复杂性可以产生简单性。但不是简单的。特别遵循类似物理定律的简单性。这对于很多领域来说确实可以给我们一些我们可以认为是“科学复杂性法则”的东西。

现在应该发生什么

看到一些东西从“只是一个想法”变成一个完整的、发达的世界生态系统,是一件很棒的事情。但这就是过去四十年中发生的事情围绕复杂现象进行科学研究的概念。在这段时间里,与特定应用程序相关的无数“工作流程”被开发出来——在各个领域都有各种各样的活动。但现在,我认为是时候总结一下已经取得的成就,看看未来可能会发生什么。

自上世纪80年代以来,我本人并没有过多地参与“复杂性领域的日常工作”。也许这种距离让我们更容易看清前方的路。是的,到目前为止,对于如何在特定领域应用“复杂性启发的方法论”(和计算模型)已经有了足够的理解。但是,通过再次关注“复杂性的基础”——并将由此产生的基础科学应用于所有“工作流”已被定义的各种应用程序——这将是一个绝好的机会。

但基础科学是什么?它最大的“症状”就是复杂性。但远不止这些。它很大程度上是基于计算范式的。它充满了深刻而有力的思想和方法。四十多年来,我一直在思考这个问题。但直到最近,特别是基于我从我们的物理项目中学到的东西,我认为我才真正清楚地看到科学应该如何定义和追求。

首先,这就是我在这里所说的元建模:从为特定应用程序构建的特定模型出发,并找出底层更最小和更通用的模型是什么。第二,我称之为规则学:研究计算宇宙中可能的规则(或可能的程序)的作用。

元建模是一种科学的“元”模拟,可能与计算语言设计等活动最直接相关。规则学是一门纯粹的基础科学,有点像纯粹的数学,但基于一种非常不同的方法论。

在元建模和规则学中都有很多重要的价值。即使在我现在称之为规则学的研究了40多年之后,我仍然觉得我只是触及了可能性的表面。

打着复杂性旗号的应用程序会随着不同领域及其目标的兴衰而来来去去。但元建模和规则学都有一定的纯洁性,并明确地锚定在知识基础上。因此,我们可以预期,无论在那里发现了什么,都将像纯数学的发现一样,成为理论知识的永久语料库的一部分。

萦绕在我们所有关于复杂性的研究之上的是计算不可约性的现象。但在不可还原性中有可还原的小块和小片。通过我们的物理项目,我们现在知道了multicomputational系统可以预期暴露于像我们这样的观察者什么相当于物理定律——实际上是利用复杂的现象来提供可接近的科学定律。

复杂性是一个基于计算范式的领域,从某种意义上说,当我们看到复杂性时,真正发生的是一些不可简化的计算正在被暴露出来。因此,复杂性研究的核心是不可约计算的研究。这种计算的细节是难以计算的。但我们可以推理,例如,我们也可以将其用于技术。

甚至在40年前,复杂性的根本起源似乎仍然是一个完全的谜——大自然的一个巨大的秘密。但现在通过计算范式,我认为我们对复杂性的根本来源有了清晰的概念。通过利用计算宇宙的基础科学——我现在称之为元建模和规则学——现在存在着一个巨大的机会,可以极大地推进在复杂性旗帜下所做的一切。

“复杂性”的第一阶段是完整的。建立了生态系统。识别了应用程序。工作流程定义。现在是时候返回复杂性的基础。并采取强大的基础科学,这些科学在那里定义“复杂性2.0”。并提供令人惊叹的潜力,即学习复杂性的概念具有科学。

Baidu