Anylogic-具有汇总值的自定义分发?

时间:2018-07-03 14:11:57

标签: distribution agent anylogic

我需要有关使用Anylogic定义自定义发行版的帮助。我有一个包含400个字段的网格,每个字段代表一个地理区域。我凭经验测量了每个字段中每天的客户数量(因此每个字段都有一个 sum )。

现在,我想进行随机模拟。生成的代理(客户)数量以每天的费率生成(根据经验对所有字段的总和进行衡量)。字段数应随机分配为分布,其中“在字段x中生成客户的概率”等于“被测字段x中的客户数除以总数”。我将这些数字用作表(数据库)。问题在于,Custom分发块希望读取具有所有值的表(因此,如果字段x每天有5个客户端,则我需要输入数字x的5倍)。

有人能更好地解决此问题吗?谢谢!

还是您知道如何通过数据库生成具有某些概率属性的代理?

PS:我想生成字段ID,因为每个字段都附有更多信息。

编辑:如果我创建一个表,其中所有值列出了x次,则无法选择一个值列: CustomDistribution for Start Fields

2 个答案:

答案 0 :(得分:0)

好的,我找到了两个问题的解决方案:

1)看来,Anylogic不能根据汇总值建立自定义分布,因为它本身是在内部进行汇总。

2)在创建具有超过20.000个值而不是400个总和的大表之后,我无法选择一个值列(参见图片)。我重新创建了大表,并将值从“ f1”更改为“ 1”(字符串更改为int)。现在就可以了。因此,看来,Anylogic在其自定义分发数据库功能中只能处理整数,而不能处理字符串。

如果这是错误的,请随时纠正我。

答案 1 :(得分:0)

将内插值设置为“无”,将自定义分布设置为“连续”。对于每个值,您都可以在权重列中输入任意值-这可以是预先计算的总和。 no插值将为您提供所输入的值之一,该值可以是实数,但在此示例中仅是离散的(1,2,3)。

enter image description here