每天一文博科园生命医学

数学的简洁性推动了进化速度?

2018-12-15  本文已影响0人  博科园

为了在天文学的巨大可能性集合中寻找到最佳解决方案,计算机科学家们正从进化生物学中寻找灵感。神造论者坚信,进化必须将300多种氨基酸按照正确的顺序组合在一起,才能创造出中等大小的蛋白质。如果每个位置上可能会出现20种氨基酸中的一种,那么这似乎会出现20^300种以上的可能性,这一庞大数量使得可观测宇宙中的原子数量变得无关紧要。即使不考虑那些能使某些序列有效对等的冗余,进化在数十亿年之内通过随机突变找到正确组合的可能性也非常小。他们论点中的致命缺陷是进化不仅仅随机测试序列:自然选择过程筛选了这一领域。

博科园-科学科普:此外大自然似乎还发现了其他捷径,将广阔的可能性空间缩小成更小、可探索的子集,从而提高产生有效解决方案的几率。计算机科学家也面临着类似挑战——在天文学巨大的可能性集合中寻找最佳解决方案。一些研究者试图从生物学中寻找灵感,尽管生物学家仍在尝试弄清楚生命究竟如何运转。遗传算法是一种已经流行了几十年的优化方法,它利用自然选择原理用于新的设计——机器人、药物和运输系统等,训练神经网络或对数据进行加密和解密。该技术将随机解决问题的方法视为“生物体”,生物体具有代码中描述的某些“遗传”特征或元素。解决方案并不是特别完美,但生物体随后会经历随机突变组合,有时还会发生模仿基因重组过程的变化,产生第二代生物体,这些生物体又会被测试其执行所需任务的“适应性”。

在找寻一个问题解决方案的广泛区域时,大多数路径都是死胡同。现在,进化或许已经找到了提高成功几率的方法。图片:Ricardo Bessa for Quanta Magazine

最终这个过程的多次重复会产生一个非常适合的个体,或者解决方案。一些专家计划将这种方法进一步优化:在所谓的遗传编程中,开发出可以编写程序并高效地提出解决方案的软件。事实证明,这一目标十分棘手,因为研究人员必须考虑特定的数据类型和结构,以及其他条件。有趣的是,基于进化的思维方式(尤其是遗传编程)在概念上与数学理论重叠,而数学理论在生物学和计算机科学中基本上都处于边缘地带。最近一些科学家试图利用数学理论来洞察自然和人工进化如何高效创造新奇和学会学习。关键是,复杂性、随机性和信息的特定概念直到现在还没有多少实际应用。

1、键盘上的猴子

这个理论在20世纪60年代盛行,用来处理所谓的算法信息。它以概率和复杂性的直观思考方式作为出发点,这种思想认为,对于某些输出,描述如何生成某种东西在计算上比实际生成它更容易。举个老生常谈的例子,猴子在电脑上随意按键。输入π的前15000个数字的可能性非常小,随着所输入数字的增长,这种可能性呈指数级下降。如果猴子的按键被解释为随机编写的电脑程序来生成圆周率,那么成功的几率,或者说“算法概率”就会显著提高。例如在编程语言C中生成π的前15000位的代码可以短至133个字符。

换句话说,算法信息论本质上是:当随机性在描述它的程序的级别而不是在输出本身的级别上运行时,产生某些类型输出的概率要大得多。通过这种方式,复杂的结构例如分形,更容易由偶然产生。但算法信息论很快出现了一个问题,数学家们发现,给定输出(指定所需的最短程序的长度)的算法复杂度(也称为Kolmogorov复杂度,以该理论的创始人之一安德烈•科尔莫戈罗夫(Andrey Kolmogorov)的名字命名)不可计算。因此,计算机科学家无法确定压缩字符串或其他对象的正确方法。由此算法信息论大多被归入纯数学领域,用于探索相关定理,定义随机性和结构的概念。

图片:Lucy Reading-Ikkanda/Quanta Magazine

IBM托马斯·j·沃森中心(Thomas J. Watson Center)和里约热内卢联邦大学,也是该理论的另一位创始人,著名数学家格雷戈里·查廷(Gregory Chaitin)说:从数学上讲,这是一种简单、美丽的复杂性度量方法,但在现实应用中,它看起来遥不可及。然而这并没有阻止他去尝试,他希望这一理论能被正式用于证明DNA作为软件的观点。2012年他出版了一本书描述了进化如何被视为在软件空间中随机游走。他认为,行走过程中的突变并不遵循统计上的随机概率分布了,相反它们遵循基于Kolmogorov复杂性的分布,但是他没有办法测试。现在,一些科学家希望重振这一理论,使之与生物学和计算机科学领域相关。

2、对简单性的偏爱

瑞典卡罗林斯卡学院(Karolinska Institute)计算机科学家赫克托•泽尼尔(Hector Zenil)是试图复兴这一理论的科学家之一。他一直在与其他研究人员合作,利用Kolmogorov复杂性来分析生物网络的复杂性,比如模拟细胞中基因调控或蛋白质相互作用的网络。研究人员对网络的算法信息内容进行比拟(由于实际值无法计算),然后在网络中引入一个突变,测试其对Kolmogorov复杂性的影响。希望通过这种方法揭示出网络的各种元素的相对重要性,以及网络如何对有意的变化作出功能性的反应。最近发表在《arxiv》上的结果显示:通过引入导致网络描述性程序变长的突变,使网络向更大的Kolmogorov复杂性移动,趋向于增加系统可以执行的功能数量,同时使其对扰动更加敏感。

如果它们推动网络变得更加简单,则会出现更少但更稳定的功能。但是Kolmogorov复杂性是否能作为一种工具之外的东西——作为蔡廷认为的变革驱动力还有待观察。尽管算法信息的确存在问题,但它在生物学领域确实有一些吸引力。传统上,用来描述进化动力学的数学框架是种群遗传学,但是群体遗传学也有其局限性;例如,它不能解释生命的起源和其他主要的生物转变,也不能解释全新基因的出现。一个在数学理论中迷失的概念是生物创造力的体现,如果我们把算法信息考虑进去,创造力就会自然而然地融入其中。进化过程本身会随着时间的推移而改善并变得更有效率的观点也是如此。

著名数学家格雷戈里·查廷(Gregory Chaitin)是算法信息论的创始人之一,他认为进化可以被理解为在软件空间中进行的一种随机计算。图片:Courtesy of Gregory Chaitin

英国赫特福德大学(University of Hertfordshire)的计算机科学家、人工智能教授丹尼尔•波拉尼(Daniel Polani)说:如果这可以通过算法复杂度渐近下降来表达,我也不会感到惊讶。泽尼尔和团队开始实验探索算法复杂性框架的生物学和计算含义。利用他们开发的用于分析和干扰网络的复杂度近似技术,他们通过使突变偏向于产生算法复杂度较低矩阵的突变,“进化”出人工遗传网络,以达到某些目标——表示基因之间相互作用的1和0矩阵。换句话说,他们选择了更大的结构。他们最近在英国皇家学会(Royal Society)《开放科学》(Open Science)上发表报告称:与统计上的随机突变相比,这种突变偏差导致网络明显更快地向解决方案进化。

瑞典卡罗林斯卡学院(Karolinska Institute)的计算机科学家赫克托•泽尼尔(Hector Zenil)试图从生物网络算法(或Kolmogorov)的复杂度来分析进化中的生物网络。图片:Courtesy of Hector Zenil, Photo by CSHV/Skof

其他特征也出现了,包括持久规则的结构,这些结构在矩阵中已经达到了一定程度的简单化,新一代不太可能改进。泽尼尔(Hector Zenil):一些区域更容易或更不容易发生突变,这仅仅是因为它们可能进化出了某种程度的简单性。研究人员提出,基因记忆反过来更快地产生更大的结构,这意味着算法上的突变也可能导致多样性的爆发和灭绝。这意味着当我们讨论进化时,考虑计算过程很有成效,他希望利用对随机性和复杂性的理解来识别更容易发生突变的区域,或者找出某些基因相互作用与癌症等疾病相关的原因。

3、迭代软件

泽尼尔希望探索生物进化是否也遵循同样的计算规则,但大多数专家对此表示怀疑。目前还不清楚是什么自然机制导致了算法复杂度的近似,或者导致了突变偏差。此外,法国国家科学研究中心(National Center for Scientific Research)的数学家朱塞佩朗戈(Giuseppe Longo)说:把生命完全编码成四个字母的想法是错误的。DNA极其重要,但如果它不在细胞中,不在生物体中,不在生态系统中,那就没有意义了。其他交互作用也在发挥作用,而这种算法信息的应用无法捕捉到复杂性的程度。尽管如此,这个概念还是引起了一些人的兴趣,特别是因为思考进化和计算过程的方式似乎与遗传编程的软件进化目标有一些共同之处。

事实上查廷和泽尼尔关于Kolmogorov复杂性和遗传编程方法的观点之间存在着一些有趣的暗示。例如,2001年一个研究小组报告表示:遗传程序输出的复杂性可以被原始程序的Kolmogorov复杂性所限制。在大多数情况下,Kolmogorov复杂性并没有在计算机科学家理解算法中发挥作用。相反,研究者们尝试了其他方法来修改所涉及的基因和突变。另一些人则偏向于支持替换较大代码块的突变。马萨诸塞州汉普郡学院(Hampshire College)的计算机科学家李斯佩克特(Lee Spector)说:人们已经发现了几百种不同版本的突变和交叉。斯佩克特最近领导的一个团队展示了在生物体基因组中添加和删除突变的优点,而不是直接用另一个基因替换一个基因。

这种新的遗传算法最终在基因组搜索空间中以指数形式扩展了路径的数量,并带来了更好的解决方案。尽管如此,许多研究人员仍选择背道而驰,继续寻找一种聪明的方法——通过缩小搜索空间来加快搜索速度,同时又不会对搜索空间造成太大的限制;但这种搜索方式可能会错过最佳结果。正如尤金•威格纳(Eugene Wigner)在1960年指出的那样:自然科学中数学的不合理有效性。计算机科学家发现,更简单的模型往往被证明更为普遍、有效。问题是,它是否能告诉我们一些关于宇宙深处的东西,无论如何,它看起来真的有用吗?

让程序朝着简单方向发展可能具有破坏性,例如奖励程序长度较短之类的东西,可能会削减对后代人有用的假想残次品,可能牺牲实验过程中的最佳解决方案,所以你被困住了。但是简单仍然十分诱人,并且可能大有用处。在去年发表的论文中,斯佩克特和同事们发现,如果他们减小程序的大小——有时仅为25%的原始大小,在执行遗传编程技术过程中,程序的表现要好于新的数据,并且能够广泛用于一般问题。这也是他一直关注算法信息论研究的部分原因,不过还没有看到算法信息论究竟如何影响这个领域。

4、从生命中学习

也许泽尼尔的团队已经朝着发现这种影响迈出了第一步,但是为了使他们的工作的应用程序更具有普遍的现实性,他们将首先在其他类型的搜索问题上测试他们的方法。威斯康星大学麦迪逊分校(University of Wisconsin, Madison)的理论神经科学家拉里萨阿尔巴塔基斯(Larissa Albantakis)说:尽管如此,在基于结构的限制方面有很好的观点,自然界在很多方面都存有结构,如果你把它作为出发点,那么尝试所有可能的一致突变就有点可笑了,任何对我们有意义的事情都是以某种方式构建起来。

尽管斯佩克特仍然怀疑泽尼尔最近的研究是否能超越他所探索的具体问题,但这些概念背后的信息论非常有趣,而且可能相当重要。它令人兴奋,部分原因是它似乎遥不可及。也许同一领域的人没有意识到某些见解。毕竟,算法信息利用了许多基因编程专家可能没有纳入他们工作的概论,包括进化的开放性。斯佩克特说:我有一种强烈的感觉,这里有重要的东西等待我们挖掘,目前研究与实际应用之间仍有很大差距。把生命看作不断发展迭代的软件想法非常有趣,无论是考虑人工生命还是生物生命,都需要具有长远的目光!

博科园-科学科普|参考期刊文献:《皇家学会开放科学》等

文:Jordana Cepelewicz/Quanta magazine/Quanta Newsletter

DOI:10.1098/rsos.180399

DOI:10.1145 / 3071178.3071330

DOI:doi.org/10.1007/3-540-45355-5_28

博科园-传递宇宙科学之美

上一篇下一篇

猜你喜欢

热点阅读