在 NetLogo 中创建随机生成的值列表

Creating List of Randomly Generated Values in NetLogo

我正在生成一个随机值,我希望将它们放入一个列表中,但我的代码生成了 4 个列表而不是一个。我希望所有生成的值都在单个列表中,而不是在多个列表中。我是 NetLogo 的初学者。非常感谢您的帮助。检查我的代码和输出

代码:

ask demands
  [
    ;calculateDistanceMatrics
    set severityLevel random 3
    set slist (list severityLevel)
    print(slist)
  ]
  reset-ticks
end

输出:

[2]
[1]
[0]
[2]

请记住,对于您的每个 demand 代理,ask 构造是 运行。这意味着每次调用 set slist (list severitylevel) 时,您都在用一个包含单个条目(由 random 3 生成)的新列表重写变量 slist

您需要向列表中添加一个元素,而不是重写列表。因此,如果您要将变量 slist 初始化为空列表,例如 set slist [],您可以一次添加一个元素,方法是将它们放在前面(使用 fput) or putting them at the end (using lput)。例如,set slist fput random 3 slist.