首页 > 其他分享 >元胞自动机模拟系统(复制器规则探索)

元胞自动机模拟系统(复制器规则探索)

时间:2024-06-11 16:00:07浏览次数:17  
标签:游戏 细胞 元胞 模拟系统 规则 复制器 自动机

相关链接

Conway's Game of life官网

Glossary of basic terms - LifeWikiicon-default.png?t=N7T8https://conwaylife.com/wiki/Glossary_of_basic_terms

网页端模拟:(复制器规则)

Conway's Game of LifeA JavaScript version of Conway's Game of Life, based on the Hashlife-algorithm.icon-default.png?t=N7T8https://copy.sh/life/?pattern=replicator

1.转换规则

生命游戏是在无穷大的平面网格上进行的。每个格子中有一个细胞,它或者活着,或者死亡。但在一代代的生命演化过程中,一个细胞有可能继续生存,也有可能在某一代死去,还有可能在某一代复活。

我们规定一个细胞的周围有8个细胞,或者说,每个细胞都有8个邻居。这8个相邻细胞的位置如下图所示:

2.元胞自动机模拟系统总体设计实现

(1)通过Height和Width两个参数,定义游戏网格的宽度和高度;

(2)初始化一个全是死细胞的网格;

(3)定义了一个 Cell 类,用于创建和绘制单个细胞;

(4)定义draw函数,用于绘制游戏世界中的每个细胞;

(5)定义next_generation函数,用于计算并更新下一时刻中每个细胞的状态;

(6)定义用户交互函数:stop()函数处理停止操作,包括退出游戏和响应键盘事件;move()函数处理游戏的演化操作,包括处理鼠标点击和更新游戏状态;

(7)主循环,根据当前状态调用相应的函数,并更新屏幕显示;

3.元胞转换规则设定

Replicator规则如下:

生存规则,周围有1、3、5、7个活着的邻居细胞, 该活着的细胞将在下一时刻继续生存;(S1357)

繁殖规则,周围存活邻居数达到1个或3个或5个或7个,原本未被激活的细胞在下一时刻被激活过来。(B1357)

4.元胞空间演化模拟

(1)Replicator复制器特点

复制器是一种类似生命的细胞自动机,如果有奇数个邻居,细胞就会存活或诞生。如果一个细胞的邻居(包括它自己)的数量是奇数,那么这个细胞就会存活或诞生,经过一个特定的周期后,原始的复制器会消失,但在其附近会出现一个新的复制器。它的总规则字符串为1357。

(S1357/B1357)这是一个非常值得注意的规则,每经过32次迭代,初始圆样都会被复制8次,这个规则具有明显的分形特征。

        初始                      32次迭代               64次迭代

       

(2)消亡型、稳定型

由于复制器的特性,总会在一定周期后出现新的复制器,因此不会存在消亡和稳定的情况。

(3)扩张性

每经过一个特定的周期后,原始的复制器会消失,但在其附近会出现一个新的复制器。如此往复,逐渐向周围扩张。

空心十字:

          

实心十字:

         

正方形边框:

        

    正方形:

        

佛印:

     

蝴蝶:

     

(4)复制器规则的元胞自动机(CA)的应用

复制器规则的元胞自动机(CA)是一种强大的模拟工具,它在多个领域有着重要的应用。在生物学领域,它被用来模拟细胞的增殖和组织的增长,有助于理解生物体的生长模式。在计算理论中,它用于探索算法的基本原理,尤其是在并行计算和分布式系统的设计中。此外,元胞自动机因其能够产生复杂的分形图案,在艺术和设计领域也得到了应用,用于创造独特的视觉作品。这些应用展示了元胞自动机在模拟自然界和社会现象中的潜力,以及在教育和创造性工作中的价值。

(5)类似的规则HighLife(23/36)

特定的结构会形成令人惊讶的(节状)自我复制现象。从下图可以看出,该结构会沿着特定方向复制延伸。

                

标签:游戏,细胞,元胞,模拟系统,规则,复制器,自动机
From: https://blog.csdn.net/m0_63037022/article/details/139601383

相关文章

  • 【元胞自动机】基于元胞自动机模拟社会力模型解决人员疏散问题附Matlab代码
    【元胞自动机】基于元胞自动机模拟社会力模型解决人员疏散问题附Matlab代码首先,元胞自动机(CellularAutomata,简称CA)是一种离散动力系统,由一个规则化的网络组成,每个元胞根据自身状态和周围邻居元胞的状态更新自身状态。CA模型已被广泛应用于模拟各种复杂系统,包括人群......
  • Java实现ATM机模拟系统(week1)
    目录目的项目规划(第一周)ATM机系统第一周需求分析账户管理大类Account(账户)类AccountOperations(对账户操作)接口创建账户账户内容管理账户权限管理User类UserOperations(用户操作)接口Operations类货币大类基本属性方法操作界面合作开发(利用git)后言 ......
  • ssm/php/node/python学生竞赛模拟系统
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义选题背景:在当前的教育环境中,学生竞赛已经成为衡量学生学术能力和创新思维的重要手段。随着科技的发展,越来越多的竞赛采用了线上模拟系统来进行,其中4x1nt学生竞赛......
  • m基于FPGA的高斯白噪声信道模拟系统verilog实现,包含testbench,可以配置不同的SNR和频
    1.算法仿真效果vivado2019.2仿真结果如下:SNR=0db,无频偏SNR=5db,无频偏SNR=25db,无频偏SNR=45db,带频偏2.算法涉及理论知识概要高斯白噪声信道在通信系统中具有重要意义,模拟此类信道有助于评估系统性能。本文提出的FPGA实现系统可以灵活地模拟不同信道条件,为通信系统的设计......
  • m基于FPGA的高斯白噪声信道模拟系统verilog实现,包含testbench,可以配置不同的SNR和频
    1.算法仿真效果vivado2019.2仿真结果如下:   SNR=0db,无频偏   SNR=5db,无频偏   SNR=25db,无频偏   SNR=45db,带频偏   2.算法涉及理论知识概要       高斯白噪声信道在通信系统中具有重要意义,模拟此类信道有助于评估系统性能。本......
  • matlab仿真逆变器故障模拟 牵引逆变器IGBT故障模拟系统
    matlab仿真逆变器故障模拟牵引逆变器IGBT故障模拟系统原创文章,转载请说明出处,资料来源:http://imgcs.cn/5c/629480936977.html......
  • C/C++全国交通咨询模拟系统[2023-06-27]
    C/C++全国交通咨询模拟系统[2023-06-27](1)提供对城市信息进行编辑(如:添加或删除)的功能。(2)城市之间有三种交通工具:汽车、火车或飞机,提供对全国城市交通图和汽车时刻表、列车时刻表及飞机航班表进行编辑的功能。(信息的输入方式可以是文件输入和键盘输入两种方式)。(3)提供两种最优决策......
  • 基于OpenMV的自动驾驶智能小车模拟系统
    一、项目简介基于机器视觉模块OpenMV采集车道、红绿灯、交通标志等模拟路况信息,实现一辆能车道保持、红绿灯识别、交通标志识别、安全避障以及远程WiFi控制的多功能无人驾驶小车。赛道规格:1、编程所需软件:OpenMV:使用OpenMV官方的OpenMVIDEESP8266:使用Arduino官方的ArduinoIDESTM3......
  • Weekly Report Template Duplicator - 周报模板复制器
    下面是周报模板复制/生成器代码:##WeeklyReportGenerator####ByAlexanderEzharjan#####Configs###template_file='template.docx'week_start=(2023,6,19)week_end=(2023,6,25)fin_date_tag="number:YOUR_STAFF_ID)"#落款时间标记########......
  • stress模拟系统负载较高时的场景
    #!/bin/bash#获取网卡名称network_adapter=`ipa|grep"BROADCAST"|awk'{print$2}'|awk-F:'{print$1}'`functionNet_speed_limiting{#输入提示read-p"PleaseinputNetspeedlimitingrate(kbit):"Net_raterea......