我正在尝试开发一种基于代理的模型,其中患者根据最近的医院距离到达医院。我在主线上有两个特工人口,
这是我的网络。看图
distanceTo(getNearestAgent(main.hospitals(0))) < distanceTo(getNearestAgent(main.hospitals(1)))
这将返回错误,“Agent 类型中的方法 getNearestAgent(Iterable) 不适用于参数 (Hospital)”。
函数
getNearestAgent()
用于查找群体中最近的代理,但您收到错误是因为您在单个代理上调用它。由于您只有两家医院需要计算距离,因此您可以使用
distanceTo(main.hospitals(0)) < distanceTo(main.hospitals(1))
(医院(0)比医院(1)更近吗?)
或
getNearestAgent(main.hospitals).equals(main.hospitals(0))
(最近的医院(0)是吗?)
(但如果您需要扩展模型以包括两家以上的医院,则需要稍微不同的方法)