根据概率创建具有不同设置参数的代理

creating an Agent with differently set parameters according to probabilities

我正在为一条装配线建模,该装配线的产品种类繁多,在装配中需要不同的步骤(主要是不同的延迟时间)。

从之前的试验和错误中我了解到我必须只使用一种代理类型来模拟这些部分。 所以我设置了一个具有多个字符串和布尔参数的代理。在源代码后面的块中,我需要阅读这些参数。

DataBase Table

在屏幕截图中,您可以看到我创建的数据库 Table。 color、b、lh、nh、t_nh和t_picklh是我给Agent加的参数。

我现在希望源在每次生成代理时根据设置的概率选择 3 行之一,并相应地设置代理参数。 所以当一个新的 Agent 被创建时,它的颜色有 80% 的可能性是黑色,它的“b”参数为真,它的“lh”参数为真等等。

我需要如何设置源以便它按概率选择一行?我看了很多教程和示例模型,但看起来源代码无法使用预设模式(到达定义为:速率、到达时间表等) 我可以写一个包含数千个日期的 Table 来模拟概率,但我认为必须有更聪明的方法。

谢谢!

不幸的是,这不能通过单独使用 Source 来实现,必须使用带有 Option[=18= 的 Custom Distribuition 来完成] 基于参数,每个选项映射到示例中的 3 个 classes 之一(A、B、C)。选择 class 后,您应该有一个查找函数,该函数根据 Source On At Exit 操作中的 class 填充代理属性(即在代理之前其实留个出处)。