数学上的简单性可能是进化速度的基础。

计算机科学家求助于进化生物学,以寻找天文维数集中的最佳解决方案



在研究可能的解决方案的广阔空间时,我们面临一个事实,即大多数途径都是死胡同。 但是进化也许已经找到增加成功机会的方法。

创造论者喜欢坚持认为,进化必须以正确的顺序收集多达300个氨基酸,而只能产生一个单一的中等大小的人类蛋白质。 而且由于可以在每个位置定位20种可能的氨基酸之一,因此似乎有20,300多种搜索选择,这比可观察到的宇宙中的原子数高出多个数量级。 即使我们发现冗余,由于这些选择中的某些选择是等效的,即使经过了数十亿年,进化偶然或偶然突变偶然组合在正确的组合上的可能性似乎也很小。

这种争论的主要缺点是,进化不会偶然经历这些序列:自然选择的过程消除了不必要的过程。 此外,自然界很可能已经发现了其他变通办法,即将大量概率缩小为更容易提供有用解决方案的可学习的小子集的方法。

计算机科学家也有类似的问题,其中包括在众多天文尺寸选择中找到最佳解决方案。 尽管生物学家本身只是想了解自然界的结果,但其中一些人还是以生物学为灵感。

遗传算法(一种已经使用了数十年的优化方法)使用自然选择的原理来创建新设计(用于机器人,药品和运输系统等),训练神经网络或加密和解密数据。 这项技术始于以下事实:对问题的随机解决方案被视为具有某些特征的“有机体”,或在其代码中“遗传地”定义的元素。 这些解决方案不是特别好,但是随后会经历各种随机突变(有时还会复制基因改组过程的其他变化)并产生第二代生物,从而反过来检验它们在解决问题中的适用性。 结果,经过多次重复,这个过程导致了一个适应性极强的个人或决定的出现。

一些专家将这种方法带入了一个新的水平,即进行基因编程,以获得可以编写程序并产生有效解决方案的程序(此处的“基因”可以是代码行)。 事实证明,实现这一目标特别困难,因为研究人员必须考虑某些类型的数据和结构以及许多其他条件。

有趣的是,这些基于进化的思维方法(尤其是遗传程序设计)在概念上与一直处在生物学和计算机科学边缘的数学理论相交。 最近,一些科学家一直试图用它来理解自然和人为的进化如何有效地工作,创造新事物并学习如何学习。 此处的主要内容是复杂性,随机性和信息的特殊概念,直到今天才真正应用。

键盘后面的猴子


该理论于1960年代发明,适用于所谓的算法信息。 它基于一种思考概率和复杂性的直观方法:对于某些输入数据,描述如何创建某事物比创建某事物在计算上更加容易。 用猴子来做一个众所周知的类比,随机地按下按键。 她打印数字π的前15,000个数字的机会非常小-并且随着数字位数的增加呈指数下降。

但是,如果我们将击键解释为显示数字π的计算机程序的随机文本,则可以大大提高成功的机会或“算法概率”。 例如,使用C语言显示数字π的前15,000位的代码,您最多可以压缩133个字符。

换句话说,信息的算法理论认为,当随机过程在描述此数据的程序级别上运行时,给出某些类型的输出数据的可能性比在数据本身级别上运行的可能性要高得多,因为该程序会很短。 从这个意义上讲,复杂的结构(例如分形)更容易被意外获取。

但是,这种方法很快出现了一个问题:数学家发现,给定输出数据的算法复杂度(也称为Kolmogorov复杂度 ,以理论的奠基人之一安德烈·尼古拉耶维奇·科尔莫哥洛夫命名)-无法产生的最短程序的长度-无法计算。 因此,计算机科学家无法找到压缩字符串或其他对象的理想方法。


左侧网络的算法复杂度很高,因为要对其进行描述,您需要列出连接顶点的所有边。 在中间,复杂度较小,因为在描述该网络时,我们可以写为顶点A连接到所有其他顶点。 正确的网络具有最小的难度,因为它的描述在于所有顶点通过边成对连接。

结果,信息算法理论主要在纯数学领域得到发展,用于研究相关定理并确定随机性和结构性概念。 它的实际使用似乎不可访问。 “从数学上讲,这是对复杂性的简单而优美的衡量,”该理论的创始人之一,曾在Thomas J. Watson IBM中心和里约热内卢联邦大学工作的著名数学家Gregory Chaitin说。 “但是从现实世界中的适用性的角度来看,它似乎是不可渗透的。”

但这并没有使他退缩。 他希望可以将这一理论用于形式化DNA像程序一样的想法。 2012年,他出版了一本书,其中描述了如何将演化表示为程序空间中的随机游走。 他写道,沿着这条路径发生的突变不受统计的随机概率分布的影响。 他们服从基于Kolmogorov复杂度的分布。 但是他无法验证。

现在,一些科学家希望在这种情况下复兴这一理论,并将其与生物学和计算机科学同时联系起来。

对简单的渴望


瑞典卡罗林斯卡研究所(Karolinska Institute)的IT专家Hector Zenil是试图复兴这一理论的人之一。 他与其他研究人员一起使用Kolmogorov复杂性作为分析生物网络(例如基因调控网络或细胞中蛋白质相互作用)复杂性的指标。 研究人员粗略估计了网络的算法内容(确切值不可计算),然后他们对网络进行了变异,并检查了它对Kolmogorov复杂性的影响程度。 他们希望这种方法可以使他们了解网络各个元素的相对重要性,以及对有意更改的功能响应。


著名的数学家格雷戈里·柴廷(Gregory Chaitin),信息算法理论的奠基人之一

在arxiv.org上发布的最新作品中 ,他们描述了如果您使网络朝着增加Kolmogorov复杂性的方向发展-引入使网络描述程序变大的突变-通常会导致其可以执行的功能数量增加网络,同时使其对干扰更加敏感。 当他们迫使网络变得更简单时,功能变少了,稳定性提高了。

但是,目前尚不清楚Kolmogorov的复杂性能否比简单的工具发挥更大的作用-例如,正如Chaytin认为的那样,它是变革的主要动力。 尽管存在所有问题,算法信息似乎仍然是生物学的诱人理论。 传统上,为了描述进化动力学,数学被用于人口遗传学领域-描述人口中基因频率的统计模型。 但是,种群遗传学有其自身的局限性:它没有描述生命的起源和其他基本的生物短暂过程,也不是全新基因的出现。 Chaitin说:“在这个美丽的数学理论中,生物创造力的想法以某种方式消失了。” 但他说,如果我们考虑算法信息,那么“创造力自然就适合大局”。

以及随着时间的推移进化过程不断改进并提高效率的想法。 “我坚信进化是在学习,”英国赫特福德郡大学的IT专家兼人工智能教授Daniel Polanyi说。 “如果能够通过渐进地降低算法复杂度来表达这一点,我不会感到惊讶。”

Zenil和团队决定实验性地测试算法复杂性平台影响下的生物学和计算结果。 他们使用与分析和扰动网络相同的估算复杂性的技术,对特定目标(即零矩阵和表示基因相互作用的矩阵)进行了人工遗传网络的“进化”,从而选择了产生具有以下特征的矩阵的突变:较少的算法复杂度。 换句话说,他们选择了较大的结构。


卡罗琳学院计算机科学专家Hector Zenil

最近,他们将结果发表在《皇家学会开放科学》杂志上,由此得出的结论是,与统计上的随机突变相比,对突变的选择导致网络向解决方案的发展显着加速。 还出现了其他特征,例如,恒定和规则的结构-矩阵的某些部分已经达到一定程度的简单性,而新一代则很难改进。 Zenil说:“单个区域或多或少容易受到突变的影响,因为它们已经达到一定程度的简单性。” “它与基因非常相似。” 这种遗传记忆帮助大型结构更快出现-研究人员认为,算法上可能的突变会导致多样性爆发和灭绝。

泽尼尔说:“这意味着,在进化研究中考虑计算过程将非常有成果。” 他希望利用对随机性和复杂性的这种理解来确定可能更易发生突变的交换途径,或者理解为什么某些基因相互作用可能与诸如癌症等疾病相关联。

程序演变


泽尼尔(Zenil)希望了解生物进化是否按照相同的计算规则进行工作,但是大多数专家对此表示怀疑。 尚不清楚哪种自然机制可能负责粗略估计算法的复杂性或迫使突变有目的地发展。 此外,“认为生命完全用四个字母编码是错误的,”法国国家科学研究中心的数学家朱塞佩·隆戈说。 “ DNA非常重要,但在细胞,生物体和生态系统之外却毫无意义。” 其他交互也起作用,算法信息的使用无法涵盖所有​​这些复杂性。

尽管如此,这个概念还是引起了人们的兴趣-特别是因为这种关于进化和计算过程的观点具有共同点,至少是一个共同的主题,以基因编程为目标-以获得可以进化的程序。

柴廷和泽尼尔的思想与科尔摩哥罗夫复杂性和基因编程方法之间的潜在联系已经引起了很大的兴趣。 例如,在2001年,一个研究小组报告说,遗传程序输出的复杂性受到原始程序的Kolmogorov复杂性的限制。

但是在大多数情况下,Kolmogorov复杂性并未在计算机科学家理解这些想法的过程中发挥作用。 他们尝试了其他改变遗传和突变的方法。 一些小组改变了突变的速度,另一些小组则迫使系统趋向于使用取代大量代码的突变。 马萨诸塞州汉普郡学院的IT专家Lee Spector说:“人们提出了数十种甚至数百种不同版本的突变和基因型。” Spector最近领导的一个团队展示了在整个人体基因组添加和删​​除突变的好处,远胜于将一个基因直接替换为另一个基因。 这种新型的遗传算子以指数方式增加了通过遗传搜索空间的路径数量,并最终导致了更好的解决方案。


Lee Spector,马萨诸塞州汉普郡学院计算机专家

但是,许多研究人员朝相反的方向发展,他们以巧妙的方式来加快搜索过程,缩小了搜索范围,但并没有限制太多,以至于搜索将错过最佳结果。 一种想法是将简单性作为目标:1960年代,尤金·维格纳(Eugene Wigner)指出“数学在自然科学中的不合理有效性”,计算机科学家发现,通常更简单,更优雅的模型更有效且更常用。 “问题是,” Spector说,“这个事实是否告诉我们有关宇宙结构的深刻信息?” 这对我们有用吗?”

他还警告说,将不断发展的程序推向简单性的尝试可能具有破坏性:为简洁起见,奖励程序可以减少现在看来像垃圾的程序,但对子孙后代可能有用,从而牺牲了最佳解决方案。 “而且我们陷入困境,”他说。

但是,简单性仍然是一个诱人的目标,而且证明了其有用性。 在去年发表的一篇论文中,Spector及其同事发现,在应用基因编程技术后,如果将程序的大小(有时仅减小原始长度的25%),则程序可以更好地利用新数据,并可以在更广泛的通用范围内使用问题。

因此,他特别监视算法信息论领域的工作,尽管他说它对这一研究领域的影响尚待观察。

从生活中学习


Zenil团队也许是迈出第一步来寻找这种影响力-但是,为了实际应用他们的工作,他们首先需要在其他类型的搜索问题上测试其方法。

威斯康星大学的神经学家和理论家拉里萨·阿尔巴塔基斯Larisa Albantakis)说,“但是,他们令人信服地证明了基于结构的约束的必要性”,他还致力于通过限制搜索空间来加速遗传算法。 “自然是结构化的,如果以此为起点,尝试测试所有可能的同质突变是愚蠢的。” 她补充说:“对我们来说有意义的一切都是结构化的。”

尽管Spector怀疑Zenil的工作可以用于解决他所研究的特定问题之外的事物,但他说:“构成其概念的信息论是一件有趣且潜在的非常重要的事情。” “这对我来说似乎很有趣,部分原因是它看起来有点陌生。” 也许有些想法是我们社区的同志所不知道的。” 确实,算法信息涉及许多思想,某些基因编程专家可能不会在他们的工作中包括例如进化的无限性质。

“我对这方面的重要事情有强烈的意识,” Spector说。 但是,他补充说,到目前为止,“它们的工作与实际应用之间相距甚远”。

Chaitin说:“将生命想象为一个不断发展的程序的想法非常有成果,”尽管其价值尚无法确定。 无论我们谈论人工还是生物生活,“我们都需要看我们能走多远”。

Source: https://habr.com/ru/post/zh-CN433602/


All Articles