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

AnyLogic中按条件拾取指定数量Agent及索引问题解决

AnyLogic仿真问题解决方案

问题1:实现Pickup块等待指定数量Product的逻辑

你当前的Pickup数量设置代码未区分数量充足/不足的场景,导致无法触发等待逻辑。正确实现方式如下:

  1. 在Pickup块的筛选条件中,设置Product的匹配规则:
    q.ProductID == ((Order)container).getIndex()
    
  2. 在Pickup块的数量设置中,编写条件判断逻辑:
    count(queue1, q-> q.ProductID == ((Order)container).getIndex()) >= ((Order)container).OrderSize ? ((Order)container).OrderSize : 0
    
    当队列中符合ProductID的Agent数量≥订单需求时,返回需要拾取的数量;否则返回0,此时Pickup块会自动等待,直到满足数量条件后再执行拾取操作。

问题2:正确引用Order agent的getIndex()

container.getIndex()不符合预期是因为container默认类型不是Order,需强制转换类型后调用方法:

((Order)container).getIndex()

将所有需要获取对应Order索引的位置,替换为上述代码即可。

内容的提问来源于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.04 04:20:04