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

如何在AnyLogic中让每第7个Agent从Output Block的False端口流出?

在AnyLogic的Output Block中分离每第7个Agent

有两种简单的实现方式,根据你的模型需求选择:

方案一:基于Agent自身编号(适合需要保留Agent顺序信息的场景)

  • 给你的Agent类型添加一个整数属性,命名为sequenceNumber(用来标记每个Agent的生成顺序)。
  • 在生成Agent的Source块中,设置On exit动作,给该属性赋值:
    • 可以用全局计数器:先创建一个int变量agentCounter(初始值0),然后在Source的On exit中写:agentCounter++; agent.sequenceNumber = agentCounter;
    • 或者直接利用种群计数:agent.sequenceNumber = getPopulationSize(你的Agent类型) + 1;
  • 打开目标Output Block的属性面板,在Condition栏输入表达式:agent.sequenceNumber % 7 != 0
    • 逻辑说明:编号不是7的倍数的Agent会从True端口流出,编号为7、14...700这类7的倍数的Agent会从False端口流出,完全匹配你的需求。

方案二:基于Output Block的进入计数(无需修改Agent类型)

  • 在模型中创建一个整数变量outputCounter,初始值设为0。
  • 选中目标Output Block,在On enter动作中添加代码:outputCounter++;
  • 在Output Block的Condition栏输入表达式:outputCounter % 7 != 0
    • 逻辑说明:每有一个Agent进入Output Block,计数器自增1;当计数器值为7的倍数时,Condition返回false,Agent从False端口流出,其余从True端口流出。

内容的提问来源于stack exchange,提问作者Ehsan Ul Haque

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 03:09:56