如何通过查看两个海龟的属性列表来比较Netlogo中的两个海龟?
我的海龟有30多个布尔值属性,我想使用foreach循环来比较海龟,并根据它们的相似性对它们进行排序,而无需单独比较每个属性。我可能忽略了一个明显的要点,我尝试过创建一个属性列表,但没有成功,所有海龟都获得了最大的相似性分数 下面是一些计算两个列表之间的汉明距离的代码。请注意,非常聪明的如何通过查看两个海龟的属性列表来比较Netlogo中的两个海龟?,netlogo,Netlogo,我的海龟有30多个布尔值属性,我想使用foreach循环来比较海龟,并根据它们的相似性对它们进行排序,而无需单独比较每个属性。我可能忽略了一个明显的要点,我尝试过创建一个属性列表,但没有成功,所有海龟都获得了最大的相似性分数 下面是一些计算两个列表之间的汉明距离的代码。请注意,非常聪明的reduce代码直接取自NetLogo字典 to testme let ll1 (list TRUE TRUE FALSE FALSE) let ll2 (list TRUE FALSE TRUE FAL
reduce
代码直接取自NetLogo字典
to testme
let ll1 (list TRUE TRUE FALSE FALSE)
let ll2 (list TRUE FALSE TRUE FALSE)
let ll3 ( map = ll2 ll1 )
show ll3
show reduce [ [occurrence-count next-item] ->
ifelse-value (next-item) [occurrence-count + 1] [occurrence-count] ] (fput 0 ll3)
end
如果你想计算一对海龟的相似性分数,你可以把它变成一个记者,以两只海龟为论据。但不清楚你想做的是比较两只海龟,所以我没有为此编写代码。一旦你有了度量标准,就使用
排序方式,但是“基于它们的相似性”是什么?如果对一只特定的海龟,使用海明距离。如果是对整个团队,请看