【发布时间】:2016-01-31 23:29:24
【问题描述】:
我正在尝试在 netlogo 中执行以下操作: 我在 netlogo 中有四个代理,带有一个随机标题和一个变量(随机 1-99)。 代理搜索最近的代理“让最近的乌龟最小之一其他乌龟[距离我自己]”
具有最高变量(例如 90 对 10)的代理将计算变量之间的差异(例如 90-10 =80)。这种差异用作“随机 100
【问题讨论】:
-
我认为您需要显示更多代码。
标签: netlogo
我正在尝试在 netlogo 中执行以下操作: 我在 netlogo 中有四个代理,带有一个随机标题和一个变量(随机 1-99)。 代理搜索最近的代理“让最近的乌龟最小之一其他乌龟[距离我自己]”
具有最高变量(例如 90 对 10)的代理将计算变量之间的差异(例如 90-10 =80)。这种差异用作“随机 100
【问题讨论】:
标签: netlogo
没有看到您的代码很难,但这是一个基于您的代码的完整工作示例。它可以正常工作并且不会引发错误。
globals [larger smaller]
turtles-own [num]
to test
create-turtles 50
[ setxy random-xcor random-ycor
set num random 100
]
ask turtles
[ let nearest-turtle min-one-of other turtles [ distance myself ]
let closed-agent-num [num] of nearest-turtle
ifelse [num] of nearest-turtle > num
[ set larger nearest-turtle
set smaller self ]
[ set smaller nearest-turtle
set larger self]
ifelse random 100 < [num] of larger - [num] of smaller
[ ask smaller [ set heading [heading] of larger] ]
[ ask larger [ set heading [heading] of smaller] ]
]
end
我怀疑有更好的方法使用棘手的引用,但这相对容易阅读。
【讨论】: