繁体   English   中英

Anylogic:如何根据正在使用的resourceSet设置服务延迟时间

[英]Anylogic: How to set Service delay time depending on the resourceSet being used

基本上我有一个服务可以使用两个ResourceSets替代品。 比方说,该服务将最佳地与一名医生和一名护士合作,但如果护士不可用,也可以只与一名医生一起工作。

现在,假设医生在没有护士的情况下工作得更慢,服务的延迟时间必须取决于此时正在使用的资源集(医生+护士或医生)。 不知道怎么编程呢?

您还应该记住,我的模型以相同的方式并行处理各种服务,它不仅仅是一个服务线。

谢谢!

您正在使用服务,但对我而言,使用Seize,Delay和Release的组合可以提供更大的灵活性。 我所做的是根据下图所示设置资源选择: 在此输入图像描述

重要的是在第一组医生之前让护士服用(出于某种原因,任何情况都会选择仅使用医生,即使有护士可用)。

比,我会写这段代码: 在此输入图像描述

这意味着如果代理只能抓住一个资源,则需要更长的时间(15只是一个随机值)。

在延迟块中,我将处理时间设置为agent.processTime

我正在使用的拓扑是这样的:

在此输入图像描述

显然这是一种解决方法,并不适用于所有情况。 您可以随时更改验证的条件。 我找不到一种方法来检查seize操作选择了哪个资源集。 如果你赶时间,这将成功。

希望有所帮助,路易斯

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM