基于变量和数据库列的多个代理到达
Multiple agents arrival based on Variable and database column
在我的源代码块中,我想根据两个不同的因素(即床位数量和每张床的访客数量)来确定代理数量。每张床的访客只是一个变量(例如 visitors=3),床的数量是从数据库 table 加载的,这是一个 excel 文件(见第一张图片)。现在我想在代码块中对此进行编码,如图 2 中的示例所示,但我不知道正确的代码,甚至不知道它是否可能。
最简单的解决方案就是在输入文件中进行预计算并在数据库中进行计算。
更复杂的解决方案是将源到达设置为:
现在,您在模型开始时使用 SQL(即 query constructor)读取数据库代码。进行必要的计算并为每次到达创建一个动态事件,当您希望它发生时,相对于模型开始。然后每个动态事件调用 source.inject(1)
方法。
更好的办法是完全不使用 Source,只使用一个简单的 Enter
块。动态事件使用数据库中的所有相关属性创建代理,并使用 enter.take(myNewAgent)
将其推送到 Enter 块中
但正如我所说:这不是微不足道的
在我的源代码块中,我想根据两个不同的因素(即床位数量和每张床的访客数量)来确定代理数量。每张床的访客只是一个变量(例如 visitors=3),床的数量是从数据库 table 加载的,这是一个 excel 文件(见第一张图片)。现在我想在代码块中对此进行编码,如图 2 中的示例所示,但我不知道正确的代码,甚至不知道它是否可能。
最简单的解决方案就是在输入文件中进行预计算并在数据库中进行计算。
更复杂的解决方案是将源到达设置为:
现在,您在模型开始时使用 SQL(即 query constructor)读取数据库代码。进行必要的计算并为每次到达创建一个动态事件,当您希望它发生时,相对于模型开始。然后每个动态事件调用 source.inject(1)
方法。
更好的办法是完全不使用 Source,只使用一个简单的 Enter
块。动态事件使用数据库中的所有相关属性创建代理,并使用 enter.take(myNewAgent)
但正如我所说:这不是微不足道的