我有像这样的零售商的NetLogo模型
retails-own [
volum
diskon
]
我想将volum和diskon的值分配给两个不同的零售店,到目前为止,我只能为它分配像这样的随机数
ask retails
[
set diskon random 5
set volum random 20
]
如何为不同的零售商分配特定价值?如何从代理调用volum和diskon的值。到目前为止我无法调用它,见下文。谢谢
to create-shortest-path
let i 0
let tempar dijkstra (item 0 retailhouse) (item 1 retailhouse)
let final_route item 0 tempar
let total_distance item 1 tempar
set buat total_distance
if buat < 20
[
ask retails
[ if diskon < 5
[set volum volum * (1 + diskon / 100) ] ;;THIS PART, how can I call volum value from a specific agent
]
]
end
答案 0 :(得分:2)
如果您只有少量这些,则可以手动分配值。例如ask turtle 0 [ set diskon 25 ]
。如果您有许多值,那么您应该考虑使用文件导入功能(请参阅模型库,代码部分中的示例)。
同样,您可以通过... [ diskon ] of turtle 0
来回忆特定座席的价值。
请注意,这依赖于who
数字,这通常是一件非常糟糕的事情,因为它们会按照创建海龟(代理)的顺序自动分配,因此如果您以后创建更多代码,代码将会中断代码中较早的代理。如果您只有几个代理并且永远不会改变,那也没关系,但您可能想要添加另一个变量来标记不同的代理。