当前位置: 首页 > 知识库问答 >
问题:

如何确定NetLogo中的一个时间步代表什么?

宇文峰
2023-03-14

我正在用NetLogo制作一个模型,我很难理解一个时间步的实际含义。我正在研究的与狼羊捕食模型类似。该模型中的一个时间步代表什么?由于每个代理都有机会在每个时间步进行复制,我本以为这大约需要一年的时间。但是代理在每个时间步只移动一个步骤(一个补丁到另一个补丁),所以这似乎远远少于一年。我希望我的模型能最好地代表现实,所以我想准确地计算出每个时间步是什么。

抱歉,如果这是一个明显的问题,但这是我一直在思考的问题。

谢谢戴米恩

共有1个答案

亢嘉茂
2023-03-14

听起来你需要改变你对“模型”的看法。一个模型应该完全代表现实,这是产生有意义的结果所必需的。不多不少。大多数模型应该更像是“思想实验”,而不是模拟器。

一个真实的流体动力学模型需要30^10个分子。但是一个5^10的模型可能会很好地完成这个任务。一个真实的神经网络模拟器需要实现各种物理、离子、细胞力学等,但大多数模型只是由一些数学公式组成,仍然能很好地逼近现实。

狼和羊的例子并不现实。如果现实的话,它还需要实现景观、狼吃的其他动物、疾病和100种其他东西。它只是想说明一点:狼/羊的比例是波动的。没有羊——

简而言之,大多数模型会试图告诉你“最终”X会发生。不管是10秒还是10年都不是重点。

 类似资料:
  • 问题内容: 我从另一个团队那里得到了有关在SQL Server中进行阻止的报告。看结果 并从Glenn Berry的博客中查询 我希望不能发现任何被阻止的东西。多次运行,我开始发现有些东西出现了,但是下次运行查询时,blcoking消失了。 我创建了临时表 之后,将查询修改为。现在,我可以运行查询多次,而不必担心结果会消失。 我一直运行查询大约10秒钟,直到最终得到一些结果。 看着柱,从我发现,数

  • 问题内容: 我能否找出对Oracle数据库中的表执行最后一条INSERT,UPDATE或DELETE语句的时间,如果是,如何执行? 背景知识:Oracle版本为10g。我有一个定期运行的批处理应用程序,可从单个Oracle表中读取数据并将其写入文件中。如果自上次运行作业以来数据未更改,我想跳过此步骤。 该应用程序用C ++编写,并通过OCI与Oracle通信。它以“普通”用户身份登录到Oracle

  • 问题内容: 我在Linode服务器上运行了docker。有时,我看到码头上的时间不正确。目前,我已经在每个docker中更改了运行脚本,以包括以下代码行。 但是,我理想地希望做的是docker应该与主机同步时间。有没有办法做到这一点? 问题答案: 该答案的来源是对该答案的注释:docker容器会自动与主机同步时间吗? 查看答案后,我意识到docker容器上不会发生时钟漂移。Docker使用与主机相

  • 问题内容: 问题很简单。我的代码中有一个循环: 在此循环中,当我们处于第一次或最后一次迭代时,我想做出不同的反应。 这个怎么做? 问题答案: 您可以使用一个计数器:

  • 问题内容: 我是Python的新手,对日期/时间文档感到困惑。我想计算执行计算所需的时间。 在Java中,我会这样写: 我确信在Python中它甚至更容易。有人可以帮忙吗? 问题答案: 在python中等效为: 如果您试图找到性能最好的方法,那么您可能应该看看。

  • 我想把一些h264 mp4视频转换成clearkey加密的dash。现在我想在本地主机上为他们服务。所以我没有带宽限制。我假设我应该使用dashavc264:onDemand配置文件和静态mpd,因为我的视频不是实时的,它们是离线的。 我的问题是: 我应该如何决定我应该使用什么时段?这是否取决于视频中有多少关键帧?它如何影响搜索/玩把戏性能?这会影响其他事情吗?