AnyLogic新手求助:如何建模两类不同到达间隔与服务时长的客户
解决AnyLogic两类不同客户的建模问题
- 新增第二个源模块:直接从库中拖入一个新的
Source模块,单独设置它的到达间隔率(比如用exponential(4, 0),参数根据你的业务需求调整),和第一类客户的源模块完全独立配置。 - 给客户添加类型标记:在你的客户Agent(比如默认的Customer)中新增一个属性,比如
int type或者String type,在第一个源模块的「On creation」事件里写agent.type = 1,第二个源模块的对应事件里写agent.type = 2,以此区分两类客户。 - 配置服务模块的差异化时长:在
Service模块的「Service time」输入框中,用条件判断语句设置不同时长,比如agent.type == 1 ? exponential(2, 0) : uniform(5, 8),这样类型1的客户用指数分布的服务时长,类型2的客户用均匀分布。 - 衔接流程:把第二个源模块的输出端口连接到服务模块(如果两类客户共用同一组服务资源),或者连接到单独的服务模块(如果资源分开),运行模型验证两类客户的到达和服务逻辑是否正常。
内容的提问来源于stack exchange,提问作者Rob
相关产品推荐
相关产品推荐

