“简单的”科学
科学定律往往因其简洁优雅而令人神往。欧几里得利用五条基本公理将复杂的平面几何统一起来;牛顿发现了描述经典物理世界三大力学定律;麦克斯韦利用四个方程统一了经典电磁理论,而特斯拉将其评价为“清丽的小诗”;爱因斯坦利用质能方程简单明了地描述了质量、光速和能量三者的关系;薛定谔用波函数奠定了量子力学大厦的根基。在简洁优雅的法则驱动下,世界变得如此丰富多彩,令人惊叹。
20世纪以前,科学的发展得益于还原论思想的兴盛。还原论认为,要认知事物的本质应该探究其各组成部分,也就是将复杂事物还原成更简单更基本的组成部分。例如,要了解动物就需要对动物进行解剖,探究其循环、神经、运动等系统,而这些系统的功能又是建立在各个器官的协作之上的,而器官又由组织构成,组织之下还有细胞、分子、原子......有一种极端的还原论思想认为,世间的一切现象都可以归结为基本粒子运动,包括各种社会、经济现象,由于社会系统是由人构成的,而人是一种生物,依照上述的推论过程,最后可以将任何事物都归因于物理学。然而,庞大的现代学科分科体系已经表明了这种思维的局限性。物理学发展并没有催生出现诸如经济物理学家、生物粒子科学家、气象分子学家等职业。相反,各学科都衍生出自己的一套术语和理论体系,并只在非常有限的范围内“还原”。似乎有某种神秘力量阻碍了我们通过“无限还原”来认知和解释世界万物。
微观粒子模拟图
神奇的“涌现”
究竟这股神秘力量是什么?为何我们不能通过对物理学高深的认知来理解更宏大的系统规律?要回答这些问题就不得不提到“涌现”。自然界的很多系统与人类设计和制造的系统以一种完全不同的方式运行。对于人造系统,比如汽车,如果你了解其机械结构和动力传导的方式,就能推测出汽车运行规律。但对于某些自然系统,这种从其组件按照逻辑推理的方式获取系统的运行规律往往行不通。例如,鸟群和鱼群的运动。在《动物世界》中,经常可以看到鸟群似乎像是一个有机整体进行着有规律的运动。
鸟群中并没有一个强有力的中心指挥者引导着每一只鸟的运动。每一只鸟的智商是有限的,能够获取的信息也非常有限,可能仅仅依据其周围少数几只鸟运动来调整自己飞行状态。比如不要飞的过近以免相撞,不要飞的过远或保持与最近的鸟尽可能一致的飞行方向以免离群。从单只鸟的飞行很难推断出成千上万只鸟组成的群体会具有怎样的运动规律。通过计算机对单只鸟的行为进行模拟,再在一个空间内随机生成许多只鸟,便可得到一个虚拟的鸟群。可以看到,在这样的条件下,鸟群的运动出现了有规律的运动,像是一个由鸟组成的有机巨型生命。鸟群通过这种运动方式完成大规模迁徙,并在迁徙的过程中寻找食物补给、躲避捕食者的追杀。
计算机模拟的鸟群,每一只鸟的运动仅遵循非常简单的规则
还有一个生动有趣的例子是蚂蚁。单个蚂蚁是非常弱小的,但由于它们会分工协作,因而蚁群经常在觅食和筑巢方面表现出超乎寻常的智能。同样,蚁群中虽然有蚁后,但并没有一个高超的指挥者引导每一只蚂蚁该在何时做何事。单只蚂蚁也仅能利用自己两个小触角不断嗅探有限的区域来决定自己将要干什么。科学家发现,一只蚂蚁在找到食物后,会将食物往巢穴中运输,同时一路上释放一定浓度的信息素。这些信息素会按照一定速率扩散和挥发。其他蚂蚁会沿着信息素浓度最高方向前进直到找到食物,并重复这一过程,以吸引越来越多的蚂蚁。利用计算机可以模拟这一过程。可以看到,最开始蚂蚁从巢穴中出发,漫无目的地寻找食物,直到偶然间有一只蚂蚁找到食物,并将食物运送回自己的老巢。一路上释放信息素,其他的蚂蚁嗅到信息素后也会跟进,这样就在食物和老巢之间形成了一条信息素的“康庄大道”。等到最近的食物搬运完毕后,蚂蚁又进入了随机游走状态,直到发现新的食物。通过对这个模型探索不难发现,信息素的扩散速度和挥发速度必须保持在一个合理的区间,才能让蚂蚁顺序从近到远搬完食物。否则可能出现同时搬几堆食物的情况。不过这还不是最要命的,如果信息素扩散过快,而挥发速度非常慢,整个空间都会充满信息素,而蚂蚁就会迷失在在信息素的汪洋大海中。科学家受到蚁群觅食的启发,发明了蚁群算法。这个算法可以在优化问题中发挥巨大作用,比如寻找一个函数最大值和最小值。当然,由于这个算法是一种全局优化算法,因而可以用到任何情境,不论一个最值的问题是否能表达成函数形式。蚂蚁的例子也说明了简单的底层规则会导致复杂的系统行为,甚至产生智能。整个蚁群的运动规律很难从单个蚂蚁的能力推测出来。
复杂系统科学家将系统宏观层面的规律性突然出现的现象叫做“涌现”。“涌现”这个词非常传神。因为系统是由非常简单的个体构成,而整个系统的规律就像从底层的简单个体中自下而上涌出来一般。宏观的物体可以分割成微小的组成部分。日常生活中,金属是由原子构成,空气和流体往往由分子构成,每个微观粒子的运动都可以用简单的规则加以描述,那么一大堆这样的微粒相互作用会发生什么呢?众所周知,天气预报并不是通过计算分子的运动来对大气的运动做出预测的,而是通过诸如气压、气团、温度等宏观指标进行分析。这样做的好处是,可以通过更少的信息和计算量获得较为满意的结果。如果要通过从分子层面建模来了解大气的运动,需要搜集的信息量把全世界的硬盘塞满也装不下;而计算这些分子间相互作用连最先进的超级计算机也无法胜任。当然,这种方式在某些领域(如计算化学)非常有效,并且可以引导科学家发现和认知更多的复杂性规律。
为了说明利用“较少的信息”获得“满意的结果”这一思想。我们可以看看一个叫做“生命游戏”的“玩具模型”。生命游戏是由英国数学家John Conway于1970年提出,经历了50多年的发展,吸引了大批数学家和计算机科学家对其进行深入研究。这个模型非常简单,如下图所示。每一个格子都表示一个生命,每个生命具有“死亡”(空白)和“存活”(蓝色)两种状态,而它究竟是死还是活需要看它周围生命的状态。规则如下:
1、如果这个格子是活着的,且仅有一个活着的邻居则它会寂寞而死;
2、如果这个格子是活着的,且有2或3个邻居活着它会愉快地活着;
3、如果这个格子是死亡的,且有3个邻居活着则它会开心地复活;
4、如果这个邻居是活着的,且有4个或更多活着的邻居则它会因拥挤而死亡。
三种不同初始化情况下生命游戏
Gosper的飞行器发射枪
通过这几条简单的规则,该模型可以演化出纷繁复杂的“二维生命世界”。可以看到,在这四条规则的驱动下,产生了一些“模式”,比如著名的“飞船”,几个方块“携手并进”飞向了远方。如果我们预测“飞船”的运动轨迹,则仅需要找到具有这种组合方块即可,无需确切知晓每个格子的变化模式,即上面四条规则。来自MIT的数学家已经证明,通过改变生命游戏的规则和初始条件,这个小小的“玩具模型”能够实现一台通用计算机的功能。真可谓,小小的身体大大的能量。(有兴趣的读者可以搜索“Conway Life Game”,有不少线上模型可以自己体验一下。)
以上展示的例子都属于典型的“复杂系统”。这类系统之所以被称为“复杂系统”是因为我们无法从其单个元件的特性获悉整个系统的运动规律。一艘航母虽然是非常复杂的,但航母设计师仍然是有目的地将零件组合起来,实现航母的功能。航母系统的功能可以通过其组成零件推导出来,因此仍然不能将其归类为复杂系统。学术界目前对于复杂系统的定义并没有形成共识,但正如复杂系统研究先驱,Santa Fe研究所的Miller教授所言,复杂系统本身就具有很强的直观性,寻找一个精确的语言上的定义是没有必要的。但我们大体可以利用是否具有“涌现性”来判断一个系统是否属于复杂系统。
虽然一艘航母的构造非常复杂,但仍然属于“简单系统”
问题的答案
我们先前的问题似乎有了答案。究竟是什么阻碍了利用微观粒子的运动来解释世界间物理、化学、生物、社会、经济、文化等现象?抽象一点的答案就是:复杂系统的涌现性。有一种更世俗的答案,那就是:在很多情况下,通过获取微观粒子的运动状态来预测宏观现象是不经济的。微观粒子的运动会在宏观层面涌现出一些中观组成部件,利用这些组成部件能够更高效地建立这些部件与整个系统之间的因果联系,从而方便人类认知和改造系统。这也解释了为何天气预报从来不关心空气分子的运动,而是从气压、温度、风速等变量着手分析。汽车工程师也从不关心机械零件中的原子运动,仅考虑变速器、传动轴、阀门等构件。经济学家也有自己的一套“黑话”,如供给、需求、资本、劳动、技术等。当然,可能有读者会提到量子世界的不确定性原理以及非线性系统的初值敏感性等问题,这些也的确构成了我们从微观粒子角度来探讨宏观现象,并认知因果规律的障碍。
结语
复杂系统理论应用非常广泛,从物理学、生物学、化学到生物学、人口动力学、心理学、经济学等领域都有科学家在孜孜不倦地研究。这篇文章通过介绍几种典型的真实与虚拟复杂系统,让大家了解简单的“小东西”通过“扎堆”可以引发宏观层面的复杂现象以及复杂系统的“涌现”特性,并为无限还原论的失效和科学的分科提供了一种解释。今后我们将会继续延续这一主题,从方法论、应用以及复杂系统模型构建等方面继续深入浅出地展开讨论。
注:本文系 科学建模DrZ 博士撰写的复杂系统系列科普文章之一,https://www.toutiao.com/i6948696829949313543/
转自:“量化研究方法”微信公众号
如有侵权,请联系本站删除!