gpt4 book ai didi

netlogo - 基于代理的模拟 : Why Netlogo is running much faster than Java based Repast

转载 作者:行者123 更新时间:2023-12-02 00:15:28 24 4
gpt4 key购买 nike

大家都说 Jave 是一种用于大型系统和工程项目的语言,它的运行速度比大多数其他语言快得多。我只是将它与另一种基于 Agent 的建模语言 Netlogo 进行了比较,我发现 Netlog 在经典狼羊模拟模型中的运行速度比基于 Jave 的 Repast 快四倍。两个模型都使用相同的参数进行仿真并实时运行 5 秒。 Netlogo 可以模拟超过 8000 个时间步,而 Jave Repast 只能执行大约 2600 个时间步。为什么?

enter image description here

最佳答案

如果您将 Netlogo 与 Repast Simphony 狼羊捕食演示与默认设置进行比较,这不是一个公平的比较,因为 Repast 模型做了更多的事情。 Repast 模型执行基于文件的数据记录、图表渲染、2D 显示渲染和 3D 显示渲染。 Repast 和 Netlogo 显示器都有更新设置,用于确定它们相对于滴答计数的渲染速度,并且显示器渲染速度高度依赖于 GPU。

为了更好地比较性能,我们需要创建更准确的测试环境。我使用默认参数运行 Netlogo 演示,未选中“查看更新”,因此显示不会更新,但图表仍会更新。模型运行 20,000 个刻度大约需要 14 秒。我通过删除文件记录并关闭 2D 和 3D 显示并仅保留图表显示来修改 Repast 演示,并运行模型 20,000 个刻度,这也需要大约 14 秒。因此,在此演示中,Repast 和 Netlogo 的性能完全相同。

我们还应该考虑到 Repast 和 Netlogo 中带有默认参数的演示模型都是复杂度有限的 TOY 模型。通常,在科学研究中使用的更复杂的模型中,代理行为非常复杂,以至于单个行为的计算时间比工具包框架代码时间大一个数量级,使得这些类型的比较无法提供工具包功能的信息.

关于netlogo - 基于代理的模拟 : Why Netlogo is running much faster than Java based Repast,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57012304/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com