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

AnyLogic中如何组合不同Agent并统计Source中各类型Agent数量

AnyLogic多类型Agent分类计数实现方案

方法1:通过Source出口动作实时计数

  • 先在模型中新增3个int类型变量,分别命名为countA、countB、countC,初始值均设为0。
  • 打开你使用的Source组件的On exit动作编辑栏,输入如下判断逻辑:
if (agent instanceof A) {
    countA++;
} else if (agent instanceof B) {
    countB++;
} else if (agent instanceof C) {
    countC++;
}
  • 模型运行后,三个变量的数值即为对应类型Agent的总生成量。如果需要统计当前存活数量,可在A、B、C三类Agent的On destroy动作中分别添加对应变量减1的逻辑。

方法2:归集所有Agent后按需统计

  • 新增一个Collection组件,元素类型设置为三类Agent的公共父类(若无公共父类可直接选Agent),命名为allGeneratedAgents。
  • 在Source的On exit动作中添加代码:allGeneratedAgents.add(agent);
  • 需要统计时,可通过遍历或内置过滤方法获取各类型数量:
// 统计A类Agent总数
long countA = filter(allGeneratedAgents, item -> item instanceof A).count();
// 统计B类Agent总数
long countB = filter(allGeneratedAgents, item -> item instanceof B).count();
// 统计C类Agent总数
long countC = filter(allGeneratedAgents, item -> item instanceof C).count();
  • 该方法适用于需要保留所有生成Agent实例、后续需扩展更多统计维度的场景。

内容的提问来源于stack exchange,提问作者Winnie

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.12 00:12:03