斯蒂芬沃尔夫勒姆的规则30模式澄清

时间:2012-09-21 08:47:15

标签: wolfram-mathematica rule cellular-automata

问题

我正在研究Wolfram的Mathematica生成随机数的方法,发现它使用Cellular Automata Rule 30。它的基本解释如下:

基本元胞自动机的演化完全可以通过一个表格来描述,该表格指定给定单元格在下一代中将具有的状态,基于其左侧单元格的值,单元格本身的值,以及右侧单元格的值

由于对于与给定小区相邻的三个小区,存在2 x 2 x 2 = 2 ^ 3 = 8个可能的二进制状态,因此总共有2 ^ 8 = 256个基本元胞自动机,每个都可以用8位二进制数索引(Wolfram 1983,2002)。例如,下面说明了给出规则30的演变的表格(二进制,规则30写为 30 = 00011110 )。在该图中,三个相邻单元的可能值显示在每个面板的顶行中,并且中央单元在下一代中获得的结果值在下方显示在中心。

Rule 30

问题

上图如何与表格上半部分的各个模式相关?我知道图表是由它们组成的,但是它是如何按顺序形成的。我没有看到任何行/列区别特征,或许可以告诉我那些层是使用给定表中的上行构建的。简而言之,我希望看到俄罗斯方块背后的这种现象

2 个答案:

答案 0 :(得分:4)

图案按行顺序排列。我们从第一行开始:一个黑色单元格。

在下一行中,每个单元格查看上面一行中的三个相邻单元格,并将该模式​​与规则进行比较。因此,左侧小区看到--X,中间小区看到-X-,右侧小区看到X--;根据规则,所有这三个产生黑色细胞(每个规则的底部细胞)。

在下一行中,中间五个单元格显示--X-XXXXXXX-X--,因此它们变为{{1}用规则转换后。

请注意,任何看到上方有三个白色单元格的单元格也都是白色,因此我们不必担心45度金字塔外的单元格。另请注意,由于XX--X--X -> X,45度金字塔的每一行始终都有一个黑色单元格。

答案 1 :(得分:4)

主图是由上部的模式组成,它们由算法生成

主图一次演变为一行。从第1行中心的单个黑色单元格开始。

表格的上半部分是用于生成图表下半部分的每一个新行的规则。

新行上每个单元格的颜色(黑/白)由新单元格上方的3个单元格确定。规则决定了颜色。例如,您的示例中的第一条规则是,如果上面的3个单元格都是黑色,那么新行中的单元格将为白色。

每个图表使用相同的8个模式来确定下一行单元格的颜色。

这8条规则的输出形成一个二进制字,如图所示,这是Rule。在这种情况下,输出为00011110,二进制为30。因此,名称为规则30。

这些规则的基本兴趣是可以从这些简单的原则生成高度复杂的模式,对不起,这里没有俄罗斯方块:)