问题描述
由分布确定的多个代理 X 以定义的到达间隔时间到达源。我需要 X 也是我的 batchSize,这意味着每次有新的到达时,batchSize 需要更改并调整到该到达的 X 数量的代理。
我尝试在退出时使用 source.count() 然后使用 batch.set_batchSize(),但由于 source.count() 在新到达之前不会设置为 0,所以它不起作用。
有什么想法吗?非常感谢您的帮助。
解决方法
创建一个名为 batchSize
的变量,类型为 int
。在来源的 On before arrival:
字段中,输入以下内容:
batchSize = uniform_disc(1,10);
当然,不要使用我使用的发行版,请使用您需要的任何一个。
然后,再次在源属性中,为 Agents per arrival:
字段写入 batchSize
。
在批处理块的 On enter:
字段中,写入:
batchBlock.set_batchSize(batchSize);
用您的块命名的任何名称替换 batchBlock。
应该可以。