Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > 数学和算法 > 计算系统 > CellularAutomaton >
Mathematica > 数学和算法 > 离散数学 > 计算系统 > CellularAutomaton >

CellularAutomaton

CellularAutomaton
产生一个表示元胞自动机演化的列表,该元胞自动机指定的规则,其初始条件 init,共有 t 步.
CellularAutomaton
给出 init 演化一步的结果.
CellularAutomaton
仅给出由 tspecxspec,等指定的演化部分.
CellularAutomaton[rule, init, {t, All, ...}]
在各步包括在 t 步中受影响的所有元胞.
  • rule 的可能形式有:
n,规则号为 n 的初等规则
{n,k}产生 k 色 的最近邻规则
{n,k,r}产生 k 色、范围为 r 的一般规则
{n,k,{r1,r2,...,rd}} 邻近的 d 维规则
{n,k,{{off1},{off2},...,{offs}}} 指定偏移量的近邻规则
{n,k,rspec,s}s 阶规则
{n,{k,1}}k 色最近邻极权规则
{n,{k,1},r}k 色、范围为 r 的极权规则
{n,{k,{wt1,wt2,...}},rspec}近邻 i 的权重被赋为 的规则
{lhs1->rhs1,lhs2->rhs2,...}近邻列表的明确替换
{fun,{},rspec}应用于各个近邻列表的一般函数 f
bfun应用于近邻集合的布尔函数
  • 二维元胞自动操作的一般形式包括:
{n,{k,1},{1,1}}9 近邻极权规则
{n,{k,{{0,1,0},{1,1,1},{0,1,0}}},{1,1}}
5 近邻极权规则
{n,{k,{{0,k,0},{k,1,k},{0,k,0}}},{1,1}}
5 近邻外部极权规则
  • 元胞自动机规则的可能数量如下:
基本规则256
一维常规规则
一维极权规则
二维常规规则
二维9近邻极权规则
二维5近邻极权规则
二维5近邻外部极权规则
  • 通常,init 中的所有元素在和演化列表是 0 和 间的整数.
  • 当使用一般函数或替换列表时, init 的元素和演化列表可以是任何表达式. »
  • 明确替换规则 可以包括模式.
  • 在一维元胞自动机中,替换规则或明确函数 fun 可以用于一维近邻列表. 若近邻指定明确偏移量,则它们按偏移量顺序给定.
  • 当多维元胞自动机的近邻在指定范围内定义,例如 ,则近邻列表采用 维全数组.
  • 若多维元胞自动机的近邻由显式偏移量列表指定,则近邻按指定顺序的偏移量的一维列表提供.
  • 若给定明确函数 fun,则所提供的第一个自变量将是近邻列表,第二自变量是从 0 开始的步数.
  • 如果 BooleanVariables[bfun] 产生一个整数 v,则完整的规则说明被认为是纯布尔函数 bfun. 在这种情况下,bfun 将在每一步应用于 v 元胞的近邻. 这个近邻将把 Ceiling 个元胞扩展到左侧.
  • 在由 指定的 s 阶元胞自动机中,各步取决于之前的 s 步.
  • 初始情况由 init 构造如下:
{a1,a2,...}假定循环时,值 的明确列表
{{a1,a2,...},b} 叠加于背景 b
{{a1,a2,...},{b1,b2,...}} 叠加于重复背景 ,... 上
{{{{a11,a12,...},off1}, {{a21,...},off2},...},bspec}
在背景的偏移量
{{a11,a12,...},{a21,...},...}二维明确值列表
{aspec,bspec}d 维填充下的 d 维值
  • aspec 的第一个元素被叠加的背景位于各个坐标正向相对原点的第一个坐标处. 也就是说, 对齐.
  • s 阶元胞自动机,init 是给出演化系统中初始 s 步的一个列表.
  • 中的时间指定 tspec 如下:
t0 到 t 的所有步
{t}仅包含第 t 步的列表
{{t}}仅第 t
{t1,t2}
{t1,t2,dt}, , ...
  • 第 0 步作为初始条件.
  • 空间指定 xspec 如下:
All受指定的初始情况影响的所有元胞
Automatic与背景不同的区域内的所有元胞
0aspec 的开始对齐的元胞
x向右的偏移量至多为 x 的元胞
-x向左的偏移量至多为 x 的元胞
{x}向右的偏移量为 x 的元胞
{-x}向左的偏移量为 x 的元胞
{x1,x2}偏移量为 的元胞
{x1,x2,dx}元胞 , , ...
  • 一维时,aspec 的第一个元素在缺省的情况下有空间偏移量 0.
  • 在任意维数时, 在缺省的情况下有空间偏移量 .
  • 在由宽度为 aspec 指定的初始条件下,在 步后能够被范围为 的规则影响的的区域具有宽度 .
  • bspec 背景不被指定,则 AllAutomatic 的空间偏移量将包括 aspec 的每个元胞.
  • All 的空间偏移量包括初始条件下所有受影响的元胞.
  • Automatic 的空间偏移量可用于剪切元胞自动机模式各边的背景.
  • 在确定区域的宽度时,Automatic 仅考虑由 指定的各步的结果.
运行规则 30 两步:
在0的背景上从1 运行 50 步:
运行规则 30 两步:
In[1]:=
Click for copyable input
Out[1]=
 
在0的背景上从1 运行 50 步:
In[1]:=
Click for copyable input
Out[1]=
基本规则 73:
三色规则 679458:
代码为 867 的三色极权规则:
范围是 的两色规则(左边两个近邻,右边一个近邻):
普通范围 的规则:
代码为10的 极权规则:
元胞的近邻有明确偏移量的规则 30:
修正偏移量的模拟规则 30:
具有2个近邻的规则:
元胞的近邻有明确权重的规则 30:
三色极权规则:
极权规则的近邻各个偏移量重 1:
三色外部极权规则:
通过给出近邻的明确替换指定规则 90:
通过给出一个单一"代数"替换规则指定规则 90 :
对规则 30 使用明确布尔公式,在 TrueFalse 状态下操作:
元胞自动机的值可以是任何符号表达式:
使用任意符号函数 作为规则应用于范围为 1 的近邻:
将该函数应用于偏移量是 的近邻:
设置一个"帕斯卡三角元胞自动机":
指定规则 90 作为明确函数:
叠加性元胞自动机模除 4:
函数的的第二自变量给定步数:
在连续步骤上改变规则; 给出步数:
使用元胞的连续值:
指定规则90为纯布尔函数:
使用纯布尔函数, 一个r = 2规则90的模拟:
明确初始条件认为是循环的:
最左元胞的左近邻是最右元胞,反之亦然:
随机初始条件:
由"种子"开始,该种子包括由 0 环绕的 11101 块:
从由 1 环绕的唯一 0 开始:
从背景为10个重复块的111开始:
指定"种子"作为一个稀疏数组:
使用 SparseArray 给出完全的循环初始条件:
从偏移量为 的块101和偏移量为 的块 开始:
演化两步:
其它形式:
仅包括第二步的列表:
第二步,不在列表里:
步骤 50 至 80:
初始条件是第 0 步:
显示从 0 到 100 的各个第三步:
缺省的情况下,CellularAutomaton 自动切除不被模式覆盖的区域:
一个等效形式:
包括受规则结构影响的所有元胞:
包括仅区别于背景的区域:
包括可能受影响的所有区域的元胞:
缺省的情况下,不同规则给出不同宽度的区域:
强制同类型的所有规则给出相同宽度的区域:
受影响的区域取决于规则的范围:
仅显示从元胞 0(初始 1 的位置)到元胞 40 的区域:
负数位置在左边:
给出仅由各步的元胞 0 组成的区域:
仅包括元胞 0 的值,而不是列表:
显示时间和空间上的每隔一个元胞:
元胞 0 恒为初始条件明确部分的最左边的元胞:
重复一个有限块,填充位置从 的初始条件下的区域:
演化范围为1的二维(9近邻)极权码14两步:
仅给出两步后的结果:
显示30步后的结果:
显示各个元胞的平均色:
在各个 1 元胞位置显示立方体:
空间时间的 50 步切片将在 偏移量为 0 处横跨所有 的值:
所有元胞在 位置的平均色:
5 近邻极权规则:
5 近邻外部极权规则:
指定在稀疏数组中用两个黑元胞作为初始条件:
三维最近邻极权元胞自动机:
规则 30 被明确写为"一阶规则":
规则 30 的二阶模拟包括两步初始条件:
在输出中包括两个初始条件:
二阶规则 1008,在两个初始条件步均以 1 开始:
包括两个初始条件步:
2色、范围1的二阶极权规10:
同一规则的 12 阶版本:
规则150R——二阶可逆模除2规则:
二阶极权算在 2 色和范围 1 下的空间时间部分:
同一规则的第50步:
给出规则 30 演化一步的结果:
另一种形式:
单步迭代三次:
给出 3 步的演化结果:
给出由重复背景围绕的中心区域的结果:
规则 45 给出一步之后的由1组成的背景:
迭代单步规则 45:
制作一张规则 30 的彩色图片:
制作前32个基本元胞自动机的图片:
从一系列初始条件中显示 2 色、范围为 2 的极权码为 20 的元胞自动机,
显示 3 色、范围为 3 的极权码 1599 的不同初始条件的结果:
各个模式的边上用三个 0 填充:
显示多"面板"的一个单一演化:
显示规则 30 的 200 步,各个元胞恰以1个象素表示:
用规则 30 的中心列在元胞值处"随意"行走:
找出规则 90 在连续宽度的循环区域重复期:
绘制规则 110 在大小为 7 时的区域处的状态转换图:
为初始条件相差一个比特的两个元胞自动机生成一个差异模式:
用灰色显示一般演化:
在"生命游戏"中显示"滑块":
在"生命游戏"中显示"呼啸的火车"的演化:
"生命游戏"初始条件随意,平均 100 步:
平均空间时间片断:
由一系列二维 9 近邻法则产生的模式:
平均元胞值:
使用球体渲染一个二维元胞自动机的演化的三维视图:
显示三维元胞自动机演化的一系列步骤:
在三维元胞自动机中显示一系列高度的时间平均片断:
构建帕斯卡三角:
基于复杂整数乘法的元胞自动机:
代数简化的模数为 3 的叠加性规则:
包括网格线:
为元胞加标签:
突出元胞中心列:
步自动元胞机演化给出长度为 的列表:
初始条件下给定的明确列表假定是循环的:
中心元胞从所有可能的元组开始,给出规则数的位数:
缺省的情况下,各个演化列表只取必要的长度:
使用 {t, All} 使一个特定类型的所有法则具有相同长度的列表:
若没有元胞和背景不同,在自动选择区域将总为空:
交替背景法则可给出只包含 0 的列表:
若演化为连续两步,则在一步的结果内包括显式的1:
在这种形式下,包括背景的一种指定:
缺省的情况下,各个演化只取必要的宽度:
使用 {t, All} 得到一致宽度:
CellularAutomaton 中元胞和步骤不根据它们的部分号码编号:
当偏移量用不同的次序指定时,规则号具有不同的意义:
版本 4.2 的新功能 | 版本 7 修改功能
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team
格式:   HTML  |  CDF