问题标签 [cellular-automata]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wolfram-mathematica - 在 Mathematica 中使用四维表模拟元胞自动机
在Modeling Cellular automata Simulations with mathematica一书中,作者使用以下代码在二维晶格中模拟元胞自动机,
来自摩尔邻里的更新规则是
其中N =北,E=东,S=南,W=西,NE=东北,SE=东南,SW=东南,NW=西北。这些参数代表了 Moor 社区中最近邻居的值。为了应用这些规则,它使用下面的代码,
对于如下表(本书第 144 页)
他正在使用以下更新规则
我的问题是:通过使用如下的四维表?我还可以应用以下更新规则吗?
这是我认为我可以如何使用我的表来处理元胞自动机的一个例子。我可以做这样的事情吗?还是我错了?
编辑我的表格
通过将我的表格更改为下面的代码,我可以使用上面的更新规则吗?
wolfram-mathematica - 元胞自动机更新规则 Mathematica
我正在尝试建立一些关于元胞自动机的规则。在每个单元格中,我都没有一个元素(捕食者/猎物),我有很多人口。为了实现我的人口之间的移动,我可以每次都将每个单元格与其相邻的一个单元格进行比较吗?还是我必须将单元格与其所有邻居进行比较并添加一些条件。
我正在使用具有以下更新功能的摩尔社区
我试图让他们根据他们所有的邻居移动,但这非常复杂,我想知道是否通过简化它并与所有邻居单独检查它会出错。
谢谢
wolfram-mathematica - 元胞自动机和随机运动
如何在我的元胞自动机模型中进行随机运动?例如,如果一个单元格中的元素远多于两个或更多相邻单元格,我想随机选择几个邻居来给出一些元素。我尝试了所有出现在我脑海中的代码,但我的问题是在 Mathematica 中,我必须确保同时一个元素从一个单元格中存活并进入另一个单元格。我想用条件来做,但我不知道怎么做。谁能帮帮我吗?
编辑:我到目前为止使用的代码
我的实际代码非常复杂,所以我将尝试告诉你我用更简单的元胞自动机做了什么。我想在摩尔社区取得成功。我的元胞自动机中的每个单元都有不止一个个体(或没有个体)。我想在我的细胞之间进行随机运动。我做不到,所以我尝试了以下代码,并在我的元胞自动机中使用它,如下所示。
这段代码正在做动作,但不是我想要的,因为如果一个单元格中有 0 个个体,它的邻居都是 5 个,那么最后它有 8 个,它的邻居有 4 个,但我不想要那个,因为我不'不希望其中包含较少个人的单元格最终拥有比其邻居更多的单元格。我希望他们所有人都有接近的价值观,并且仍然有动作。我不知道如何在 Mathematica 中做到这一点。
wolfram-mathematica - 使用元胞自动机的 Brainfuck 解释器
有没有人有一套用于脑残解释器的元胞自动机规则?我认为它类似于通用图灵机的实现。这些存在于 wolfram 网站上,但我不知道如何为 BF 系统调整它们。
javascript - 用 JavaScript 和 HTML5 Canvas 实现的元胞自动机
我在 JavaScript 中实现了 Conway 的生命游戏,但我没有看到与 Gosper 的 Glider Gun 相同的模式。我按照 Wikipedia 文章中描述的方式为网格播种,但是,枪从来没有发生过。
有人会查看我的代码,看看它是否有任何问题,对实施有什么建议吗?
xna - 加速元胞自动机
是否有可能通过某种算法或类似的东西来加速元胞自动机?我正在使用在 XNA 中制作的 Conway 的 Game of Life 实现,它运行良好,但问题是当我使用大于 128x128 单元格的网格时,它变得非常慢。
我不认为这与代码或 XNA 如何处理纹理和绘图有关,但更新这么多单元(即评估每个单元的邻居并基于获得其新状态)这一事实需要大量计算.
当然,理想的元胞自动机应该无限大,但实际上这是不可能的。但在我看来,128x128 太小了,无法真正看到系统的行为方式。
任何帮助将不胜感激!
cellular-automata - C#中元胞自动机的图形实现?
在我最新的项目中,我应该在 C# 中实现元胞自动机。我需要有关如何创建单元格数组图像并显示当前状态的帮助,然后在打勾后显示整个下一个状态。我也是 C# 的新手。我应该如何实现状态改变效果?
java - 将元胞自动机数据数组翻转为乐谱(如 WolframTones)
好的,所以使用元胞自动机的一些基本原理,我设法让一个程序运行,该程序生成一组根据规则计算的数据。每个单元格都是一个布尔值。
目前我将它存储为 - boolean[][] 数据 - 其中第一个索引是行,第二个是单元格。
现在我已经到了想将音乐转换为乐谱(存储为数组)的地步。在页面上,它显示了如何从 CA 数据转换的图表 -
给数据打分
我无法理解如何使用我的存储方案以编程方式完成此操作。如果有人可以提供帮助,那就太好了,如有必要,我可以提供更多信息。
java - 为什么我的 Java Game of Life 程序无法运行?
我正在开发一个制作康威生命游戏图形模型的程序,但它一旦启动就不允许我做任何事情;按钮不起作用,网格没有改变。我究竟做错了什么?
如果有人能告诉我它有什么问题,那就太棒了。
algorithm - 大规模元胞自动机是如何模拟的?
以 Minecraft 中的红石为例 - 它基本上是一个 15 状态元胞自动机,具有以下基本规则:
以及各种连接元素的附加规则
(我已经写了更多关于如何使用 CA 实现 Minecraft 的东西:http: //madflame991.blogspot.com/2011/10/cellular-automata-in-minecraft.html)
现在,我的问题是:游戏将如何更新巨大的红石装置?它使用什么数据结构?它真的是作为元胞自动机实现的吗?如果不是,那么您的最佳猜测是什么?
PS 我不是要任何人看一下实际的源代码,只是想推测一下这个技术是如何实现的。...我在这里发布这个,在 SO 上,而不是在 gamedev 上,因为这是一个 CA 问题,而不是一个与 gamedev 相关的问题。