Python模拟现象,matplotlib模块,Python实现生命游戏

前言 今天用Python简单复现一下里面介绍的生命游戏,让我们愉快的开始吧~
开发工具 Python版本:3.6.4
相关模块:
matplotlib模块;
numpy模块。
环境搭建 安装Python并添加到环境变量,pip安装需要的相关模块即可。
主要思路 游戏简介:
想象一下,一望无际的太平洋被分成了许许多多方格子。每个格子里正好能放下一个“细胞”。这个细胞不能运动,它可以是死的,也可以是活的。但它的状态,是由它周围8个细胞的死活决定的。
决定的规则为:
(1)“人口过少”:任何活细胞如果活邻居少于2个,则死掉;
(2)“正常”:任何活细胞如果活邻居为2个或者3个,则继续活;
(3)“人口过多”:任何活细胞如果活邻居大于3个,则死掉;
(4)“繁殖”:任何死细胞如果活邻居正好是3个,则活过来。
题外话:
上面这几条规则大概是元胞自动机中最出名的一套规则了。“麦克阿瑟天才奖”最年轻的得主Stephen Wolfram正是元胞自动机的忠实粉丝。其发现的“Rule 30”规则组,可以从一个活细胞出发,生成一套极其复杂的无尽花纹。后来Mathematica里使用的随机数生成器,就是基于“Rule 30”的。250次迭代后的“Rule 30”:
Python模拟现象,matplotlib模块,Python实现生命游戏
文章图片

据说结果神似织锦芋螺的花纹。
Wolfram认为这正是我们宇宙的本质;我们的世界就是计算,就是一套简单的规则生成的复杂现象。其关于元胞自动机的研究获得了超过一万次引用。
随手附上xkcd的一幅漫画:
Python模拟现象,matplotlib模块,Python实现生命游戏
文章图片

【Python模拟现象,matplotlib模块,Python实现生命游戏】生命游戏具体实现过程详见主页简介相关文件中的源代码。

    推荐阅读