You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AnyLogic中基于智能体距离的状态转换代码报错问题咨询

问题解决:AnyLogic智能体模型距离判断报错

错误原因

你写的代码里,getNearestAgent()方法的参数类型不匹配。这个方法要求传入智能体群体(Iterable类型,比如main.hospitals这类集合),但你直接传了单个Hospital对象(main.hospitals(0)是群体中的第一个医院实例),触发参数类型不兼容的报错。

修正方案

方案1:直接对比到两个医院的距离

既然已经明确要对比到两个特定医院的距离,不需要嵌套getNearestAgent,直接用distanceTo()计算单个医院的距离即可:

distanceTo(main.hospitals(0)) < distanceTo(main.hospitals(1))

方案2:通用写法(适配多医院场景)

如果后续医院数量可能增加,可先获取当前患者的最近医院,再判断是否为目标医院:

getNearestAgent(main.hospitals) == main.hospitals(0)

这个写法会自动从所有医院中筛选出最近的那个,再与指定医院做对比,适用性更强。

内容的提问来源于stack exchange,提问作者Jahidul Hasan Razib

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 17:14:52