1.1 复杂系统的结构
怎样才能改变这种可怕的现状?由于根本问题来自于软件固有的复杂性,所以我们建议,先研究其他学科中复杂系统是如何组织的。实际上,如果看看周围的世界,就会发现许多成功的、相当复杂的系统。其中一些系统是人类的作品,诸如航天飞机、英法海底隧道和大型商业组织等。自然界中有许多更为复杂的系统,如人类的循环系统和古巴辣椒的结构。
1.1.1 个人计算机的结构
个人计算机是一个具有相当复杂度的设备。大多数个人计算机由同样的主要部件组成:中央处理器(CPU)、显示器、键盘和某种二级存储设备——通常是CD或DVD驱动器和硬盘驱动器。我们可以任取其中一个部件进行进一步分解。例如,CPU通常包括主存储器、算术逻辑单元(ALU)以及一条连接外围设备的总线。这些部分又可以进一步分解,ALU可以分解为寄存器和随机控制逻辑,而它们又由更为基础的部件组成,如NAND门、反相器等。
这里我们看到了复杂系统的层次化特征。个人计算机能正常发挥功能,是因为它的每个主要部件之间协同工作。这些分离的部件形成一个逻辑整体。实际上,我们之所以能够理解计算机的工作方式,是因为可以将它分解为能够独立研究的部件。因此,我们可以独立地研究显示器的操作和硬盘驱动器的操作。类似地,我们可以在不考虑主存储器子系统的情况下研究ALU。
复杂系统不仅仅是层次化的,而且这种层次也代表了不同的抽象级别,一层构建于另一层之上,每一层都可以分开来理解。在每一个抽象层都可以发现一组设备,相互协作,为更高的抽象层提供服务。我们选择某个抽象层来满足特定的需求。例如,我们追踪主存储器中的一个时钟问题,可能会查看计算机的逻辑门级架构,但是如果要找的是电子表格应用中一个问题的根源,这个抽象层就不合适了。
1.1.2 植物和动物的结构
在植物学中,科学家们试图通过研究植物的形态,即植物的外观和结构,来理解植物之间的相似与不同。植物是复杂的多细胞生物,通过各种植物器官系统之间的协作,实现光合作用和蒸发等复杂的行为。
植物包含三种主要的结构(根、茎和叶),每种结构都有不同的、特有的结构。例如,根包括支根、根毛、根尖和根冠。类似地,叶的横切面表明它有表皮、叶肉和维管束。这些结构又由一些细胞构成,在每个细胞内部还可以发现另一层的复杂度,包括叶绿体、细胞核等。像计算机的结构一样,植物的各部分组成了一种层次结构,层次结构中的每一层都有着各自的复杂性。
同一层抽象中的所有部分之间,以某种定义良好的方式进行交互。例如,在最高的抽象层,根负责从泥土中吸收水分和矿物质;根与茎交互,茎将这些原材料送到叶子;叶子利用茎输送的水分和矿物质,通过光合作用制造养料。
给定抽象层的内外之间总有清晰的边界。例如,可以说叶子的各个部分协同工作,作为一个整体提供叶子的功能,但与根的各组成部分之间很少有或没有直接的交互。简而言之,在不同抽象层的不同部分之间,存在着清晰的关注点分离。
在计算机中,我们会在CPU和硬盘驱动器的设计中找到NAND门。类似地,在植物结构层次的各个部分之中,也有大量相同的特点。这是造物主实现简洁表示的方式。例如,细胞是植物中所有结构的基本单元,植物的根、茎、叶最终都是由细胞构成的。但是,尽管这些基本要素都是细胞,这些细胞却有许多不同的类型。例如,有的细胞有叶绿体而另一些细胞没有,有的细胞有不透水的细胞壁而另一些细胞的细胞壁是半透膜,甚至还有活细胞和死细胞的差别。
在研究植物的形态时,我们找不到某一个独立的部分负责一个大的过程的一小步,如光合作用。实际上,没有集中的部分直接协调较低层各部分的活动。相反,我们看到的是一些独立的部分,它们各自为政,每一部分都展示出相当复杂的行为,每一部分都对许多较高层的功能做出贡献。只有通过这些部分之间的共同协作,我们才能看到植物较高层的功能。复杂性科学把这称之为“突现行为”,即整体行为大于部分行为之和[6]。
简单地看一下动物学,会发现多细胞动物具有和植物相类似的层次结构:一些细胞构成了组织,几种组织协作构成了器官,一组器官构成了系统(如消化系统),等等。我们再次注意到了造物主的简洁表达:所有动物的基本构成单元都是细胞,就如同细胞是所有植物的基本构成单元一样。当然,植物和动物是有区别的。例如,植物细胞由刚性的细胞壁包围,但动物细胞不是这样。尽管存在着这些差异,但毫无疑问,这些结构都是细胞。这是跨领域共性的一个例子。
在细胞水平之上的一些机制也是植物和动物所共有的。例如,动植物都利用某种脉管系统在器官内传输养料,同一物种的不同个体之间都表现出性的差异。
1.1.3 物质的结构
从解剖学到核物理,各个领域的研究都为我们提供了许多非常复杂的系统的例子。除了这两条原则,我们还发现了另一种结构上的层次结构。天文学家研究由星团组成的银河系,恒星、行星和碎块构成了银河系。类似地,核物理学家也在关注一种结构上的层次结构,不过这种结构在尺度上完全不同。原子由电子、质子和中子组成,电子似乎是一种基本粒子,而质子、中子和其他粒子则由更基本的粒子(被称为夸克)组成。
我们再次发现,一种非凡的共性以普适机制的方式,统一了这种宏大的层次结构。具体来说,宇宙中似乎只存在四种相互作用力:重力、电磁力、强相互作用和弱相互作用。许多涉及这些基本相互作用的物理定律,如能量守恒定律和动量守恒定律,既适用于银河系也适用于夸克。
1.1.4 社会机构的结构
作为复杂系统的最后一个例子,让我们来看看社会机构的结构。一群人聚在一起,完成一些个人无法完成的任务。有些机构是临时的,有些机构存在的时间超出了人的寿命许多倍。随着组织机构变得越来越大,我们看到了一种特有的层次结构。跨国公司包含许多子公司,子公司又包含许多部门,部门又包含分支机构,分支机构又包含各地的办公室,等等。如果组织机构能长期存在下去,这些部分之间的边界可能会改变,随着时间的推移,会出现新的、更稳定的层次结构。
这种大型组织机构中,各个部分之间的关系就像计算机、植物甚至银河系各部分之间的关系一样。确切地说,一个办公室内的雇员之间的交互程度,要强于不同办公室的雇员之间的交互程度。负责处理邮件的员工一般不会与首席执行官打交道,而是会经常与收发室的其他员工打交道。这里同样存在着适用于不同层次的共同机制。员工和首席执行官都由同一个财务机构发薪水,都使用一些公共设施,如公司的电话系统,来完成他们的任务。