AnyLogic 循环作为退出操作

问题描述

我正在尝试在 AnyLogic 中构建一个小交付模型。 我在我的工厂收到订单,想将它们转移到卡车上。 这个想法是,将订单发送到卡车,直到达到容量(在此测试模型中只有 2 个),然后选择下一辆有空间的卡车。 在工厂的出口块,我有以下代码作为“退出操作”。 “代理”是订单。

for (int i=0; i==2; i++)
 {
 if (main.trucks.get(i).queue.size() < 2)
 {main.trucks.get(i).enter.take(agent);
 break;
 }
 }

订单从未到达卡车,为什么? 对于实数,它可以工作,它必须对循环做一些事情。 还是不能在 Actions 中使用循环?

解决方法

这确实应该使用流程建模库中的 Pickup 块来实现,其中 Exact quantity (wait for) 选项用于选择模式。如需更多信息,请咨询help for Pickup