【问题标题】:netlogo programing help on traffic simulationnetlogo 对流量模拟的编程帮助
【发布时间】:2010-08-25 15:21:06
【问题描述】:

我正在寻找patch-ahead n上是否有乌龟

其速度 - 加速度

if any? turtles on patch-ahead n with [speed <= (speed - acceleration)]

但这给出了一个错误:

patch-ahead 需要一个数字,而是设置了代理。

我该如何补救?

n 是一个数字变量。我想在调用海龟的第 n 个补丁中访问海龟的“速度”,它是用户定义的海龟自己的变量。命令“with”在这里不起作用。请建议一种替代方法来访问海龟的速度,例如调用海龟的第三个补丁。

【问题讨论】:

    标签: simulation traffic netlogo


    【解决方案1】:

    如果您查看patch-ahead documentation,您会注意到它确实需要一个参数:一个代表向前看距离的数字。您使用的是补丁“n”而不是数字。

    根据您的评论,我认为您可能希望使用海龟,并使用括号使其更清晰,例如:

    if any? ((turtles-on patch-ahead n) with [speed <= (speed - aceleration)])
    

    在上面我假设n 是一个数字:你想要向前看的距离。

    【讨论】:

    • n 是一个数字变量。我想在调用海龟的第 n 个补丁处超过海龟的速度(速度是海龟的用户定义变量)。 'with' 命令在这里不起作用,请提出任何替代方案,以在调用海龟的第 3 个补丁时超过海龟的速度。
    • 我更新了答案。请注意,它的“海龟”而不是“海龟”。
    • 我相信您已经意识到这一点,但您正在寻找前面的“n”个空格,这意味着您选择了一个单个补丁。这可能需要在从 1 到 n 的循环中检查其间的所有补丁。只是想确保清楚
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-18
    • 2021-04-09
    • 2011-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多