将 Cellular automaton (细胞自动机或元胞自动机) 看作计算机 是一个巨大的课程, 很有价值的课程。 在这里,我将粗略概述, 但我在课程网页的 可选阅读部分放了 一些阅读材料, 供您查看这个话题。 我们先来谈谈 计算的意思是什么。 计算是 在计算中信息的处理 信息输入到系统, 它以某种方式存储在内存中, 它从内存的一部分 转移到另一部分, 并且与其它信息结合在一起, 这也可以称为已处理。 最后,为用户或整个系统 输出处理过的信息 以便以某种方式使用 一点草图,我们有输入, 然后是执行 计算的程序在输出 例如, 在动态系统中, 输出将返回 并成为输入。 有一个概念 在计算机系统领域 和复杂系统领域非常重要, 是通用计算的概念。 基本上 通用计算是 计算机能够被编程的现象。 这是一台可以运行 任何程序的计算机。 所以它就像桌面上的电脑, 如果它是无限的内存 然后它可以 运行任何 可计算的程序。 所以这里的想法是, 我们有输入和程序,而不仅仅是输入 这进入通用计算机, 结果是输出 您可以将此视为桌面上的计算机, 您可以在程序中 输入数据 这是由您或您计算机内存中的 其它输入。 您的计算机充当通用计算机 并在该输入上运行该程序, 然后创建输出。 计算机科学领域 的胜利之一是发现 只需要一小组 逻辑运算集合 来支持通用计算。 通过支持通用计算 我的意思是能够构建 一个可编程计算机 这意味着如果你可以实现 一组特定的逻辑运算, 使用它们,并以不同的方式组合它们 你原则上可以 拥有一台在任何输入上 运行任何程序的计算机, 即通用计算机 正如我之前提到的, John Von Nuemann (约翰·冯·诺伊曼) 是第一位 将细胞自动机 做为复杂系统模型的科学家之一, 特别是 他研究机器或 自动机中自我复制的想法。 他建造了一个 二维元胞子自动机。 每个细胞可以处于29种状态中的一种, 并且这种细胞自动机 可以复制输入其中的任何模式, 包括其自身。 这是这种自我复制 的示意图, 这是一个复杂的机器。 它有一个输入空间,输出空间, 并复制自己, 或者你给它的任何其它模式。 但 Von Nuemann (冯·诺伊曼) 把它也 变成了一台通用计算机。 也就是说,这不仅可以自我复制, 还可以计算任何可计算的函数。 许多人已经简化了 Von Neumann (冯·诺伊曼) 的自我复制自动机, 以获得更少的状态, 但它是在细胞自动机内 首次创建通用计算机 生命游戏也被 证明支持通用计算 1970年,John Conway表明生命 可以实现原则上 用于通用计算的 简单逻辑运算。 他还描述了如何 构建通用计算机。 然后在20世纪90年代, Paul Rendell 构建了通用计算机。 这是他构建的 通用计算机的一部分图片 有点难以看到, 但它使用了 我们之前看过的一些结构, 如滑翔机,滑翔机枪等, 以实现通用计算 所需的逻辑运算 我不得不说, 在细胞自动机中实现 这种计算是一项 非常复杂的工作。 很长一段时间,Stephen Wolfram (斯蒂芬 沃尔夫勒姆) 怀疑这一点 一些基本元胞自动机 可以支持通用计算。 这在基本元胞自动机中 意义重大, 如果你还记得,非常简单问题, 是它们创建的 复杂行为是否 足够复杂, 可以实现这种信息处理 最强大的形式。 嗯,Wolfram的假设 是所有4类细胞自动机 都支持通用计算。 请记住,第4类是 处于周期性和混乱状态之间的那些, 即混沌边缘细胞自动机。 这个假设很难评估。 嗯,一个问题是 没有真正的 4类细胞自动机的 正式定义。 而且事实证明 某些系统这很难实现 能够进行通用计算。 但是,Wolfram和他的同事, Matthew Cook成功地证明了 规则110可以 支持通用计算 沃尔夫勒姆的书“新的科学”一书中的 长篇章节对此进行了描述 你可以在网上免费阅读这个 我在课程资料网页上添加了一个链接。 这是一个相当技术性的证明但是 一般的想法是规则110 支持这些所谓的移动粒子, 这就是这些局部结构 在空间和时间的移动, 请记住沿着垂直 空间向下沿着 水平方向延伸, 因此,这些移动的粒子可以 整合来自 不同空间位置的信息 并相互碰撞。 因此,例如,我们在这里 看到这个粒子与这个粒子碰撞 并创建一个新的粒子 这个想法是信息可以存储在这些 更规则的模式中, 通过这些粒子转移, 并通过粒子碰撞进行处理 原则上,这些可以支持 通用计算 然而,在实践中,这很难 如果不是不可能实际编程 这些细胞自动机要做 任何有用的任务 通用计算 在细胞自动机中非常有趣, 鉴于如此简单,甚至令人惊讶 特别是基本细胞自动机。 这不是一种非常 实用的计算方法。 在细胞自动机中 模拟通用计算机 太慢了。 这也很难编程。 因此,没有人真正 使用细胞自动机 的通用计算能力进行 任何实际目的的计算。 但是,细胞自动机已经 被用于更实际的并行计算。 例如,在图像处理领域。 我不打算在这里谈论它, 但是在下一个子单元中, 我将讨论 一个特定项目, 其中遗传算法用于 进化细胞自动机 以进行实际计算。 最后让我简单谈谈 细胞自动机对复杂系统的重要性 好, 你已经看到细胞自动机 是真正理想化的复杂系统, 可以从简单的规则 产生非常复杂的行为。 你已经看到了自然复杂的系统 可以使用细胞自动机建模 像建筑, 并且细胞自动机 为理解复杂动力学 如何产生集体信息 处理提供了框架, 这就是信息处理, 它来自生命系统中的 一系列简单组件。 生命意味着分散的, 相对简单的组件, 组件之间 有限的通信等。