好吧,我正在开发一个模拟,部落(群体)中的代理可以在固定大小的地图中竞争他们拥有多少区域。(地图是 2D 地图)。他们通过分组相互竞争来竞争,获胜的组得到另一组的所有。这个模拟是用java编写的。
我试图获得一些想法的主要问题是我应该如何存储每个组拥有多少地图。起初我只是使用 Dimension 的一个实例,然后每次一组代理赢得一个区域时将其添加到维度中。但是问题是,拥有的区域可以位于地图中的任何位置,区域之间存在间隙,如下图所示。(抱歉,图片不佳,正在尝试绘制问题使用 gimp)
注意:不同颜色的矩形代表代理拥有的区域,而紫色圆圈代表代理本身。
现在另一个想法是拥有一个 ArrayList 的 Dimension 类型,其中包含特定部落代理所拥有的所有区域。
但我在想是否有更好的方法来做到这一点。