我从两个代理(行业)的简单模型开始,我想打印两个变量中较小的一个(属于每个代理)。我不确定如何比较来自不同代理的两个变量并打印该值。代码的相关部分粘贴在下面:
to setup-turtles
create-I1 1 [
setxy 0 7
set shape "factory"
create-active-links-to I2
set color 125
set product product-I1
set raw-material 0.35 * product-I1
set waste (0.003 * product-I1)
]
create-I2 1 [
set shape "factory"
create-active-links-to I1
set color 55
set product product-I2
set raw-material 0.102 * product-I2
set waste 0.032 * product-I2
]
end
*the problem is here
to-report E1-2 min [waste of I2 or raw-material of I1]
report E1-2
end
答案 0 :(得分:1)
to-report E1-2
report min (list [waste] of one-of I2 [raw-material] of one-of I1)
end
请注意,我已将one-of
添加到您的尝试中。 NetLogo不知道您将只有一个T1和一个T2,因此您必须告诉NetLogo从所有T1中选择一只乌龟,从所有T2中选择一只来进行比较。在这种情况下,list
不是必需的,因为您只有两个要比较的值,但我将其包括在内,以防您想要将最小值放在更多值上。