首页 > 解决方案 > netlogo dbscan 扩展是否适用于补丁?

问题描述

netlogo dbscan (kmeans) 集群(按位置)扩展是否适用于补丁和海龟?还是只对海龟有效?

标签: netlogo

解决方案


文档很清楚它是针对海龟的。你能解释一下你想要做什么吗?聚类算法识别或多或少密度的区域。所以空间聚类对于补丁是没有意义的。但是,按变量聚类是有意义的,但不可用。

如果您想通过某个补丁变量进行聚类,为什么不简单地为每个补丁创建一个海龟,该补丁具有您想要聚类的任何补丁变量,然后对这些海龟进行聚类并将集群信息传递回它们的补丁?此代码演示了该方法,但不对聚类信息做任何事情。

extensions [dbscan]

patches-own [wealth]
turtles-own [wealth-here]

to testme
  clear-all
  ask patches [set wealth one-of [50 200 500]]
  ; let clusters dbscan:cluster-by-variable patches "wealth" 3 20 ; this generates error
  ask patches [sprout 1 [set wealth-here wealth set size 0]]
  let clusters dbscan:cluster-by-variable turtles "wealth-here" 3 20 ; this works
  show clusters
end

推荐阅读