Python实现元胞自动机(生命游戏)

Python实现元胞自动机(生命游戏)

Python 3.7.1

康威生命游戏(英语:Conway’s Game of Life),又称康威生命棋,是英国数学家约翰·何顿·康威在1970年发明的细胞自动机。

它最初于1970年10月在《科学美国人》杂志上马丁·葛登能的“数学游戏”专栏出现。

概述

生命游戏是一个零玩家游戏。它包括一个二维矩形世界,这个世界中的每个方格居住着一个活着的或死了的细胞。一个细胞在下一个时刻生死取决于相邻八个方格中活着的或死了的细胞的数量。如果相邻方格活着的细胞数量过多,这个细胞会因为资源匮乏而在下一个时刻死去;相反,如果周围活细胞过少,这个细胞会因太孤单而死去。实际中,玩家可以设定周围活细胞的数目怎样时才适宜该细胞的生存。如果这个数目设定过高,世界中的大部分细胞会因为找不到太多的活的邻居而死去,直到整个世界都没有生命;如果这个数目设定过低,世界中又会被生命充满而没有什么变化。

例:
(图片来自维基百科条目:生命游戏)
在这里插入图片描述

Python代码实现

  1. 引入所需库
import numpy as np
import random
import copy
import matplotlib.pyplot as plt
  1. 设定元胞生长棋盘的大小
length = 100
width = 200
  1. 根据棋盘的长宽创建矩阵
cell = np.zeros((length,width),int)
cell_temp = copy.deepcopy(cell)
  1. 初始化矩阵为一个随机的0-1矩阵,1代表细胞生存,0代表细胞死亡
for i in range(0
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值