用python玩转元胞自动机
1、整体代码,请下载于:pan.baidu.com/s/1bpbL0nZDQBuICD8PWo26oQ,提取码: 4e43。
2、元胞自动机需要一个初始状态,这里给出一个套趱咝鲞初始状态:a=np.zeros((100,136))u,v=a.shapefor i in range(u): for j in range(v)多唉捋胝: if (i+j)%10<2 or (i-j)%10<2: a[i,j]=1只有0和1的简单情形。本文只考虑这种简单情形。
3、它的前36步变化的动画如下。
4、前100步变化。
5、换一种套趱咝鲞初始状态:a=np.zeros((100,136))u,v=a.shapefor i in range(u): for j in range(v): if (i+j)%10&造婷用痃lt;2 or (i-j)%10<3: a[i,j]=1前100步动画如下。
6、a=np.zeros((100,136))u,v=a.shapefor i in range(u): for j in range(v): if (i**2+j**2)%10<2: a[i,j]=1
7、a=np.zeros((100,136))u,v=a.shapefor i in range(u): for j in range(v): if 20<(i**2+j**2)%36<30: a[i,j]=1
8、a=np.zeros((100,136))u,v=a.shapefor i in range(u): for j in range(v): if 20<(i+j)%36<30: a[i,j]=1
9、a=np.zeros((100,136))u,v=a.shapefor i in range(u): for j in range(v): if i==68 or j==68: a[i,j]=1