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

AnyLogic中创建每日定时循环事件移除所有Customer Agent的技术求助

AnyLogic定时清除Customers群体Agent解决方案

一、设置定时循环事件

  • 从「流程建模」面板拖拽循环事件到主画布
  • 在事件属性面板配置:
    • 「首次触发时间」:输入目标特定时间,比如要早上8点触发就写 timeToDateTime(8, 0, 0)
    • 「重复间隔」:填写 24*60*60(AnyLogic以秒为时间单位,24小时对应86400秒)

二、编写正确的清除代码

你之前写的Object Customer=null;只是声明了一个空变量,完全没有执行移除Agent的逻辑,替换成以下代码:

// 倒序遍历Customers群体,避免索引错位
for (int i = customers.size() - 1; i >= 0; i--) {
    Person customer = customers.get(i);
    // 先移除流程图关联,确保Agent脱离流程
    if (customer.getAgentFlow() != null) {
        customer.getAgentFlow().remove(customer);
    }
    // 从群体移除并销毁Agent
    customers.remove(customer);
    customer.destroy();
}
  • 注意:把代码中的customers替换成你实际的Customers群体变量名(如果你的群体名不同)
  • 倒序遍历的原因:正序遍历移除元素后,集合长度变化会导致后续索引越界

三、验证效果

运行模型后,到设定的触发时间,检查流程图和Customers群体的Agent数量,确认无残留

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 20:15:42