问题标签 [behaviorspace]

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.

0 投票
1 回答
289 浏览

r - 如何同时使用多个内核在本地主机中运行 Netlogo 的 Rserve-Extension

我有一台 Mac 10.8.5 (Mountain Lion)、2.6GHz Intel Core i7、8GB RAM、Netlogo 5.0.4、Rserve-Extension 0.1beta、R 版本 3.0.2 (2013-09-25) -- "Frisbee Sailing" .

我想运行我的 NetLogo 模型,它通过 Rserve-Extension 将变量发送到 R,使用 BehavSpace,这样我就可以同时使用至少 4 个内核运行它。

当我通过主界面(不使用 BehaviorSpace)运行 NetLogo 模型时,它可以完美运行。但是,当我尝试通过 BehaviorSpace 同时使用 4 个内核运行它时,它似乎在所有 4 个内核中运行,但只保存了 1 个模型运行的结果(在 R 中生成的 .csv 文件)。它还给出了一个初始错误“预期输入是一个代理,但得到了数字 0”——当我通过主界面运行它时它不会给出这个错误。

我只定义了 1 个端口:

我的怀疑是,我猜,非常简单......我对此没有什么经验......

我需要在带有 Rserve 扩展的 NetLogo 模型中包含哪些代码才能使用 BehaviorSpace 在多个内核中同时运行它?每个核心是否需要 1 个连接?

我尝试了以下代码:

它连接第一个本地主机并在到达第二行时给出错误消息,说明它已经连接(到第一行)。

谢谢爱德华多

0 投票
1 回答
608 浏览

netlogo - NetLogo BehaviorSpace 内存大小限制

在我的模型中,我使用行为空间来执行多次运行,每次运行时变量都会发生变化,输出存储在 *.csv 中以供以后分析。该模型在前几次迭代中运行良好,但随着数据的增长迅速变慢。我的问题是在行为空间中使用文件刷新会对此有帮助吗?或者有没有办法解决它?

干杯

西蒙

0 投票
1 回答
167 浏览

netlogo - 在 BehaviorSpace 运行之间保持映射

我有一个已上传的 *.shp 文件,并将其用作模型的一部分(计算最短路径)。这是一个相当大的形状文件,有数千条由节点表示的道路连接和交叉口和桥梁。我希望通过不每次都加载此地图来加速行为空间的运行,因此创建了一个单独的过程来加载地图和定义链接权重等。在这个过程中,我有全部清除 - 重置滴答声,所以一切都很有效如果我加载新地图,则擦除。在设置中,我为每次运行定义海龟属性。在每次运行之间,我使用 clear-all-plots 和 clear-output 以及 reset-ticks。当我运行这个模型时,行为空间在一些设置后开始缓慢运行,即使有一个表格输出。但是,如果我将加载映射和设置文件组合在一起,即为每个新的行为空间运行加载映射,

示例 - 运行缓慢,但地图不会每次都重新加载

示例(保持速度 - 但必须加载地图)

我的问题:我是否遗漏了一些有助于加快速度而不必重新加载地图的东西?

0 投票
1 回答
197 浏览

netlogo - BehaviorSpace 在步骤 #0 冻结

抱歉,如果这很明显,我已经搜索了我能想到的所有内容并问了一位同事,我们都陷入了困境。

我有一些我想运行行为空间的代码(下面 - 对狼羊捕食的轻微扭曲)(输入也在下面)。但是,它永远不会运行到完成。它似乎总是卡在运行的第 0 步(卡住的运行 # 不同)。如果它们单独运行(因此所有变量看起来都很好),它所坚持的运行就可以正常工作。它似乎只是冻结(不产生错误消息,也不会崩溃)。

任何想法是什么原因造成的?

谢谢,

西蒙

代码:

行为空间输入:

变量:

重复:1

记者:

测量在每一步运行

设置:setup

去:go

停止(我试过有没有这个):count wolves = 0 and count sheep = 0 and ((count patches with [pcolor = green]) = (count patches - (count patches with [pcolor = blue])))

时限:5000

0 投票
1 回答
201 浏览

memory-leaks - Netlogo 5.1(和 5.05)行为空间内存泄漏

我以前发过这个,但我以为我已经追踪到了 NW 扩展,但是,在最新版本中仍然会发生内存泄漏。我找到了这个线程,它讨论了一个类似的问题,但将其归因于行为空间:

http://netlogo-users.18673.x6.nabble.com/Behaviorspace-Memory-Leak-td5003468.html

我发现了同样的症状。我的模型开始时大约为 650mb,但在每次运行中,私有工作集内存都会上升,达到 1024 限制。我有足够的记忆来提出这个问题,但实际上它只会延迟发作。我正在使用表格输出,根据之前的讨论,这会有所帮助,而且确实如此,但它只会减慢增长率。然而,最终内存使用量上升到 PC 开始挣扎的地步。我正在清除运行之间的所有数据,所以应该没有宿醉。我在突出显示的线程中注意到他们将无头运行。我会试试这个,但我想知道是否有其他人注意到这个问题?我的另一个选择是将 BehSpc 模拟分成几批,这样问题就不会出现,

0 投票
1 回答
120 浏览

netlogo - BehaviorSpace NetLogo:保存具有不同名称的矩阵

我正在使用 NW 扩展在 NetLogo 中运行 BehaviorSpace 以运行多个网络实验,我需要将网络矩阵保存到具有不同名称的文件中。

现在,我有以下内容:

但这意味着每次 BehaviorSpace 运行通过“matrix.txt”都会被覆盖。例如,如果我运行 100 次模拟,基本上我想将 matrix1.txt 输出到 matrix100.txt。

0 投票
1 回答
775 浏览

netlogo - Turtles-own 或 Breeds-own 作为 BehaviorSpace 中的变量

如何在 BehaviorSpace 中使用品种自己或海龟自己的变量。当我尝试它时,出现“全局变量不存在”的错误。

我不能将这些变量用作全局变量,因为每个品种/海龟在每次运行期间都需要拥有自己唯一的变量值。

0 投票
0 回答
198 浏览

r - 使用 R 扩展时 NetLogo BehaviorSpace 崩溃

我正在我的机器上运行一个动物家园模型。我在我的 NetLogo 代码中添加了 R 扩展来计算每个家庭范围的最小凸多边形。当我在多核上运行 BehaviorSpace 中的模型时,NetLogo 将在几个时间步之后简单地消失(即停止运行)。我已经在 5.04 和 5.1 中尝试过,同样的情况发生了。如果我选择 1 个内核而不是我机器上可用的 4 个内核,该模型确实在 BehaviorSpace 中正常运行。如果我关闭 R 扩展,它也可以正常运行。有什么我应该做的吗?我想最终在具有多核的虚拟机上运行它。

0 投票
3 回答
267 浏览

r - 如何在 data.frame 中创建一列特定列的平均值?

感谢大家的回复和回答。我可以看到我无意中遗漏了一些可能有助于您更好地理解我的问题的重要细节。我试图保持简单和通用,但这实际上并没有帮助。这是包含更多信息的更新版本。

我有data.frame很多列来NetLogo自由BehaviorSpace. 每列是一个时间序列,表示不同实验条件下的报告值,重复次数由运行次数和时间步数表示。例如(对不起,这很长,但我试图让您了解数据):

这会将以下内容放入 df 中:

所以我之前所做的是使用拆分数据框,by并希望获得每个步骤(它是一个时间序列)和每个因素组合的平均值和标准偏差。

在查看了您的所有答案并重新考虑了我的问题之后,我认为我正在尝试做的事情在by. 我不完全确定如何做到这一点......我希望输出看起来像各种各样的摘要:

这是一份工作aggregate吗?感谢您的耐心和帮助。——格伦


原始问题:

我有data.frame很多列,每列代表一个特定的重复实验条件。

我想找到每个条件和重复的均值和标准差。到目前为止,最直接的方法似乎是:

但是我有很多专栏,而且到处都是,所以这看起来真的很费力和手工。一个更好的方法是使用ave()

但是,如果我想做 sd() 代替,我会神秘地得到 NA:

如果可能的话,我宁愿不使用外部包,但似乎我缺少一些基本的东西。这个问题很相似,但与 data.tables,而不是 data.frames 有关。

另一个更接近,但是使用 ave() 也很乏味,例如,指定第 1-12、15-17 和 26 列作为主题列,并且神秘地sd()产生了这些 NA。似乎应该有一个简单的方法来做到这一点。几乎让我希望Excel。:-)

0 投票
1 回答
104 浏览

statistics - 虚拟实验的重复次数足以“从统计上确定”其发现?

在阅读Netlogo 中关于 BehaviourSpace 的这篇文章后,作者指出“[...] 模型是随机的,您需要多次运行每个参数设置才能在统计上确定这一点”,我想知道重复多少次才足够对虚拟实验中的发现“从统计上确定”?