【问题标题】:How to randomly place turtles at each model opening?如何在每个模型开口处随机放置海龟?
【发布时间】:2014-09-26 18:34:37
【问题描述】:

每次打开我的 Netlogo 模型时,创建的海龟都会放在同一个位置。我有 1000 次模拟,我使用了 behaviorSpace。我试过random-seed,但是对于behaviorSpace中的每个模拟,我怎样才能在不写的情况下使用这个函数:

random-seed 0
create-turtles

random-seed 1
create-turtles  

random-seed 2
create-turtles  
....
random-seed 1000
create-turtles 

?

更新

我不使用 behaviorSpace 同时重复我的模型 1000 次,但我打开文件 .nlogo 的 1000 次。我想找到一种在每次打开文件时都有不同的海龟位置的方法(我使用one-of 将海龟放置在补丁中)。

非常感谢您的帮助。

【问题讨论】:

    标签: netlogo


    【解决方案1】:

    (已更新)

    在您的评论中,您提供了您正在使用的重要信息import-world。这将恢复整个世界的准确状态,包括随机数生成器的状态!因此,之后您每次都运行相同的模型。

    如果您想重新播种随机数生成器,以便每次运行不同,那么在import-world 之后,说random-seed new-seed

    【讨论】:

    • 非常感谢赛斯。我使用random-seed 0 来创建我的风景。然后我导出了我的风景。当我将它导入 Netlogo 并运行我的模型时,所有海龟总是放在同一个地方。非常感谢您的帮助。
    【解决方案2】:
    random-seed behaviorspace-run-number
    

    【讨论】:

    • 非常感谢艾伦。我在行为空间写了random-seed behaviorspace-run-number。但它不起作用。当我打开我的模型和重新打开我的模型时,海龟总是放在同一个地方。非常感谢您的帮助。
    • 您的更新大大改变了问题,正如赛斯所说。然而,它也提出了你为什么要以这种方式进行的问题。请注意,为了可复制性,您需要能够在每次运行时准确重现模型的状态,包括随机数生成器的状态。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-02
    • 1970-01-01
    • 2016-03-28
    • 1970-01-01
    • 2016-03-06
    • 2022-06-23
    相关资源
    最近更新 更多