美文网首页
传统CA的变化

传统CA的变化

作者: 大龙10 | 来源:发表于2022-07-24 12:49 被阅读0次

书名:代码本色:用编程模拟自然系统
作者:Daniel Shiffman
译者:周晗彬
ISBN:978-7-115-36947-5
第7章目录

7.9 传统CA的变化

讨论CA特性扩展的思路。

1. 非矩形网格

  • 没有理由让你只用矩形网格表示CA中的细胞。如果用其他形状表示CA中的细胞,效果会是怎样的?
  • 可以用六角形网格创建CA,每个细胞都有6个邻居。

2.概率性

CA的规则不一定会产生确定的结果。

  • 个体过剩:如果细胞有4个或更多的活者的邻居,那么它有80%的概率会死亡。
  • 孤独:如果细胞有一个或更少的活着的邻居,那么它有60%的概率会死去。

3. 连续的

  • 细胞的状态只可能是0或1,假如它的状态是介于0~1的浮点数呢?
  • 改写Wolfram初级CA模型,让细胞的状态是一个浮点数。

4. 图像处理

  • 我们在之前简略地接触过这一点,但是大部分图像处理算法和CA规则是类似的。
  • 模糊化图像就是根据邻居像素的平均值创建新像素。
  • CA规则可以用于模拟墨水在纸上的浸散效果及图像的水纹效果。

5. 历史性

  • 在面向对象的生命游戏程序中,我们分别用两个变量表示细胞的当前状态和前一代状态。
  • 如果你用一个数组存放细胞的状态历史,会有怎样的新特性?事实上,这种思路常用于开发“复杂自适应系统”,它能从历史学习中不断适配和改变规则。
  • 我们会在第10章看到这样的示例:神经网络。

6. 移动细胞

  • 上述基础示例中,细胞在网格中的位置是固定的,但是你也可以创建这样的CA:细胞的位置不是固定的,它可以在屏幕上移动。

7. 嵌套

  • 复杂系统还有一个特性,即系统之间可以互相嵌套。我们的现实世界就具有这样的特性:城市是由人组成的复杂系统,人是由器官组成的复杂系统,器官是由细胞组成的复杂系统……

相关文章

网友评论

      本文标题:传统CA的变化

      本文链接:https://www.haomeiwen.com/subject/xntyirtx.html