在本讲座中,我们将看到我们如何利用 基于算法信息动力学的因果干预主义演算的力量, 不仅可以描述和研究对象,找出原因,还可以引导和运行系统。 因为我们使用可计算模型和算法技术,所以我们将这种 类型的操作称为“重新编程系统”。 科学界面临的最大挑战之一是,作为观察者,我们总是处于不利地位, 我们只能在单一的范围内进行局部和孤立地观察。 出于这个原因,我们总是要处理所谓的噪声和部分表示。 表征在科学中有各种各样的风格,我们经常喜欢用微分方程等来模拟系统现象, 但有时也于作网络和离散系统。 实际上,对于几乎任何表示,人们都可以提出一组完全描述相同系统的等效表示, 但允许我们看到相同现象的不同特征。 我们已经看到如何使用一些不同特征和测量结果会使我们 的结果产生偏差,我们还看到 如何尝试从语言相关的措施转向更多目标意味着分析数据以推断模型。 我们已经分析了几个动态系统如何表征网络, 现在是时候向前迈出一步,看看找出可能的观测原因的方式 可以帮助我们引导和操作那些相同的系统。 通过展示这一点,我们肯定会留下更多的描述性方法, 例如传统的统计数据无法自己找到模型, 因此几乎没有机会处理管理系统。 然而,一旦了解了原因,以及产生什么,我们就可以开始操纵模型 和系统以不同的方式运行,特别是以我们认为可能 对我们有用的方式。 因此,在本单元中,我们从一个摘要中引入了可重编程的概念 理论观点但在下一个单元中,您将看到如何应用它 现实世界的系统,特别是生物细胞,用于不同的目的。 所以我们在这方面有一些最近的成果。 我们展示了如何重新编程细胞自动机以模拟任何其他细胞自动机。 我们这样做的方式是通过计算机科学中的所谓编译器。 编译器是一种小型计算机程序,它只能在两种不同的 语言或系统之间进行转换。 是一种实时解释器,允许您以一种两个系统可以 相互通信的方式将数据从一个系统传输到另一个系统。 所以我们做的是采用随机元胞自动机,我们会找到一个基于编译器 详尽的探索和黑客技巧,以找到正确的初始条件 用于细胞自动机模拟其他细胞自动机。 通过详尽地执行此操作,我们能够打破 Wolfram课程强加的某些界限。 您可能还记得,在之前的讲座中,Wolfram的课程特别划分了系统 初等元胞自动机分为4类, 不同的定性行为, 所以类1和2是显示行为非常简单的系统类。 然后,第4类是产生随机行为和3类系统显示结构的系统, 简单特征和随机外观的组合。 然而,我们能够证明的是,我们能够在每个Wolfram类中重新编程实例, 并使它们像所有其他Wolfram类中的细胞自动机 一样运行。 这里我们有一个使用编译器模拟其他的元胞自动机的例子。 编译器仅在每次计算时使用一次,在开始时介于初始条件和 仿真元胞自动机的正常计算之间。 然后编译器将该初始条件转换为 模拟元胞自动机的指令,以模拟另一个。 在右侧,您可以模拟和模拟细胞自动机示例, 说明我们如何能够重新编程细胞自动机, 令人难以置信的使其像其它提供计算机程序可重编程的证据。 利用所有这些信息,我们能够重建仿真网络, 如果一个细胞自动机能够模拟另一个细胞自动机, 则两个细胞自动机将通过有向边连接。 我们在这样的演化网络中发现了许多有趣的属性,包括其中的方式 我们能够找到长链仿真,并且还可以管理比其他更可重新编程的集线器, 或者更容易被其他人模仿以某种方式 重新建立Wolfram类, 但更多的是务实而非基本的。 更引人注目的是能够模拟具有非常不同的定性计算行为的 其它细胞自动机的数量。 我们发现探索的细胞自动机越多,就可以根据自身 大小的颜色数量的多少其他细胞自动机而言,它们的可重编程性越强。 与根本不可重新编程比较,它们能够模拟。 这种可重编程性实际上是图灵普遍性的更强版本 并被称为内在的图灵普遍性,因此发现越来越多的计算机程序 通过这种方式可重新编程,我们也发现我们的结果 似乎表明图灵普遍性是普遍存在的。 因此配备了所有这些工具,我们实际上能够找到几个新的通用细胞自动机, 其中一些非常有趣。 这些例子说明了2个元胞自动机, 这是组合几个元素元胞自动机的结果。 在这些图中,这些元胞自动机中的每一个都运行规则110计算, 并且我们已经示出它们能够模拟规则110因此自身是图灵通用的, 因为规则110是图灵通用的。 这些实际上可能是近二十年来发现的唯一涉及 基本元胞自动机的新的普遍性结果。 请记住,图灵普遍性意味着系统可以执行任何可计算的功能 这意味着,例如,这些极其简单的细胞自动机可以模拟事物 就像你的整个Microsoft Windows计算机一样,即使非常慢, 因为它们在任何给定时间都只有非常少的资源, 所以他们需要做各种技巧来重新编码计算但是他们能够做到这一点。 因此,与算法动力学相关的一个基本问题是, 如何根据系统对其模型的贡献诱导系统的扰动, 实际上会改变该系统的动态。 在系统级别执行扰动以更改可能的生成模型 等同于模拟原始模型中的更改,然后可以运行更长时间 以将其输出与原始系统输出进行比较并查看差异。 所以我们做了第一个简单的实验,我们采用了所有可能的随机布尔网络 最多5个节点,如你所知,因为它们的数量 增长超指数但由于它们很小, 我们可以探索它们并提取一些显着的统计结果。 因此,我们计算了前面课程中定义的哪些扰动为正,负和中性, 即哪些扰动会对原始系统模型产生影响, 从而迫使其将新元素合并到 系统级别的新变化中。 而我们发现的东西也是我们期待的东西, 并且可以证明是极端的帮助,算法复杂度上的移动系统 对系统的动态景观具有预测作用, 即在动力系统的相空间中。 因此,从随机布尔网络实验中 我们能够产生结果。 由于这些小图中的吸引子数量紧密有限, 但考虑到案例数量和平均差异,结果与我们在大型网络上发现的结果一致, 因此案例之间的区别很微小但很重要。 在图(e,f和g)中,例如,简单有向完整图, ER和无标度布尔网络中吸引子数量变化的数值计算 显示了非常一致的结果。 在一个完整的图中,只有少数可能的吸引子, 因为一切都是连通的,它只取决于边的方向和节点函数, 但只有负扰动产生更多的吸引子,正和中性扰动保留了数量, 正如我们预期的那样。 在Erdos-Renyi 随机网络的20个汇总结果的结果中, 分离更加清晰,并且与使用小布尔网络的详尽实验一致。 负扰动,即那些将网络移动到更大的算法随机性的扰动, 会增加吸引子的数量,而正面会减少它们,中性保留它们。 与常规网络一样,无标度网络被发现对扰动更具弹性, 但同样只有负扰动能够增加吸引子的数量。 请注意,执行此类操作以控制和 操纵网络动态的替代方案很少。 有一个关于网络可控性的活跃研究领域,但所有这些都涉及 假设分布,可以访问精确的节点功能 例如在神经元和基因的情况下,它们也倾向于假设 所有系统都是线性的或接近平衡的,它们可能不在现实世界中, 但在这种方法在连接算法信息空间 和动力相空间是必要的。 从这些第一原则出发,系统它们远非随机,显示出固有的 规则结构,有较深的吸引子因此更加强大 面对随机扰动,我们可以推导出来(重新)可编程性指数 网络的算法因果扰动推动系统朝向或远离的元素 从算法随机性揭示定性吸引者景观的变化甚至在 缺乏系统的动态模型。 例如,取决于原始复杂性在网络中, 负面扰动会增加吸引力的数量 并使它们更浅,对系统的动态有着显著的改变。 网络可更多(重新)编程它的元素可以自由地移动网络 并且远离随机性从而也在改变它的动态。 还要注意可编程性的不对称性曲线,因为随机边缘扰动, 简单网络比随机网络更敏感网络,这是某种类似热力学的现象 以一种非常有趣的方式计算回溯到统计力学。 该可重编程性指数指定低值简单随机的系统和高价值 仅适用于具有非平凡结构的系统,因此构成了所谓的措施 精致,随意分辨来自高度结构化的简单案例 这种情况量化了算法的可塑性 和面对的系统的弹性扰动。 该图显示了我们所谓的(重新)可编程性 由两个可编程性度量的笛卡尔积定义的空间。 一个是相对(重新)可编程性 Pr(G) , G的信息签名,它为我们提供了可以 使网络朝向或远离随机性的元素数量 以及其信息签名形式的这些元素中有多少低于或高于零。 另一个度量,绝对(重新)可编程性PA(G) 考虑了签名σ(G)的形状。 这两个指标都有助于获得有关系统(如网络)的 (重新)可编程能力的信息。 有效地,组合版本是两个(重新)可编程性度量之间的加权指数, 其最大化由向量的大小测量的确定性, 其中更接近(1,1)或(重新)可编程性向量的量值√2, G (可重新编程)的确定性更高。 因此,在下一个单元中,我们将看到如何将这个单元的所有这些想法 应用于行为,进化和分子生物学的应用,特别是认知和遗传学。