找回密码
 注册
关于网站域名变更的通知
查看: 396|回复: 1
打印 上一主题 下一主题

#技术风云榜#元胞自动机概述与MATLAB实现

[复制链接]
  • TA的每日心情

    2019-11-19 15:32
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2020-11-10 15:04 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x

    6 A" Q7 n  @) k5 D$ O; C6 B7 q什么是元胞自动机?
    7 U) X% J3 X8 d* X9 C; @元胞自动机(cellular automata,CA) 是一种时间、空间、状态都离散,空间相互作用和时间因果关系为局部的网格动力学模型,具有模拟复杂系统时空演化过程的能力。它能构建随时间推移发生状态转移的系统,细胞存在于一维或多维网格中,每个细胞都有一个或多个状态,每个细胞都有邻居(即邻近的细胞)。1 r5 [" j6 s3 C( y+ }
    - m6 c8 H8 P; Z4 z6 [* K
    元胞自动机分类
    ) A: h' ]7 Y+ f/ S/ o, @* B) ^1 y" W平稳型:自任何初始状态开始,经过一定时间运行后,元胞空间趋于一个空间平稳的构形,这里空间平稳即指每一个元胞处于固定状态。不随时间变化而变化。% C1 u- S& U9 e" Q' T* W; a
    周期型:经过一定时间运行后,元胞空间趋于一系列简单的固定结构(Stable Patterns)或周期结构(Perlodical Patterns)。由于这些结构可看作是一种滤波器(Filter),故可应用到图像处理的研究中。) i4 D; e0 L: p3 M
    混沌型:自任何初始状态开始,经过一定时间运行后,元胞自动机表现出混沌的非周期行为,所生成的结构的统计特征不再变止,通常表现为分形分维特征。
    * F8 k0 L7 ]2 ]; p3 N$ Q6 F复杂型:出现复杂的局部结构,或者说是局部的混沌,其中有些会不断地传播。
    9 T' ]" g- F' q
    ; b% B8 F/ q: }3 J  m( h3 H1 o ! b' T# |! S" d

    , f: ?! T* r8 F1 x- \0 E- T! n奇偶规则
    , F/ J1 |; q4 a$ j' M4 o奇偶规则是定义在二维网格上的一种元胞自动机。每个网格的状态用0各1表示。" I; g/ D+ e; D: M
    * m, L& t" u0 \4 [: \# E
    (1)     对应于每一个元胞位置(i,j)计算出其八个最近领居在t时刻的状态值St的总和M(i,j)。
    / P( L" j8 ~2 s3 J1 c
    $ z, ]5 T+ c2 P6 u, o(2)     根据M(i,j)取值的奇偶性来决定下一时刻t+1该点的状态St+1(i,j)。当M(i,j)为偶数时,St+1(i,j)等于0;当M(i,j)为奇数时,St+1(i,j)等于1。八个点和为偶数,则变为0,为奇数则变为 1
    0 g7 y1 _. H3 U9 U/ Q" s6 }& c& m5 U6 b3 o& N0 }( S
    平稳型元胞自动机实现2 |! w7 c, X& }5 g6 w
    2 b4 ~/ b3 y" X; Q. o
    • % 规则,先把中间点置为1,每一时间步对每一点,如果周围
    • % 八个点和为偶数,则变为0,为奇数则变为 1
    • Map = [1 1 1; 0 0 0];
    • colormap(Map);
    • % 设置网格大小
    • S = 121;
    • L = zeros(S);
    • % 把中间一个数设置为 1 作为元胞种子
    • M = (S+1)/2;
    • L(M, M) = 1;
    • Temp = L;
    • imagesc(L);
    • % 计算层数
    • Layer = (S-1)/2 + 1;
    • for t=2:Layer
    •     for x=M-t+1:M+t-1
    •        if x==M-t+1 || x==M+t-1
    •           for y=M-t+1:M+t-1
    •             SUM = 0;
    •             for m=-1:1
    •                for n=-1:1
    •                   if x+m>0 && x+m<=S && y+n>0 && y+n<=S
    •                      SUM = SUM + L(x+m, y+n);
    •                   end
    •                end
    •             end
    •             SUM = SUM - L(x, y);
    •             Temp(x, y) = mod(SUM, 2);
    •           end
    •        else
    •             y = M-t+1;
    •             SUM = 0;
    •             for m=-1:1
    •                for n=-1:1
    •                   if x+m>0 && x+m<=S && y+n>0 && y+n<=S
    •                      SUM = SUM + L(x+m, y+n);
    •                   end
    •                end
    •             end
    •             SUM = SUM - L(x, y);
    •             Temp(x, y) = mod(SUM, 2);
    •             y = M+t-1;
    •             SUM = 0;
    •             for m=-1:1
    •                for n=-1:1
    •                   if x+m>0 && x+m<=S && y+n>0 && y+n<=S
    •                      SUM = SUM + L(x+m, y+n);
    •                   end
    •                end
    •             end
    •             SUM = SUM - L(x, y);
    •             Temp(x, y) = mod(SUM, 2);
    •        end
    •     end
    •     L = Temp;
    •     imagesc(L);
    •     pause(0.1);
    • end
      ) }! H* _7 r2 O) y7 K, p

    & Q- W* _6 c9 p2 w* z% J1 g- P
    % N. i& d9 D" K; ?         效果图
    ( I, m" t1 c3 W8 ]. R# o
    9 ?$ h- W$ G6 p9 g8 u/ B4 V
    7 O; i/ o- `) a$ O

    该用户从未签到

    2#
    发表于 2020-11-10 15:36 | 只看该作者
    第一张图看的人难受
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-24 09:45 , Processed in 0.171875 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表