Anylogic transitions - 速率条件
Anylogic transitions - Rate condition
我正在尝试使用速率逻辑在两个状态之间创建转换:我希望该事件随机发生 x 次,但仅限于有限的模型时间间隔(例如从模型时间下午 1 点到凌晨 00 点,指定此事件只能在此时间范围内发生)。
你有什么建议吗?
非常感谢,
P
使用特定消息更改从速率到消息的转换,如下所示:
然后,创建一个 returns double 值的函数。函数体应该是:
if( time() < x )
return 0;
else if( time() >= x && time() < y )
return rate;
else
return 0;
当然将x
和y
替换为费率不为0的时间段的开始时间和结束时间,将rate
替换为需要的费率。
然后创建触发类型速率的事件。在比率字段中写入 function()
。在操作字段中写入:
if( time() >= x && time() < y )
send( "rate", this);
发送消息之前的最后一个条件很重要,以防事件被安排在该范围之后。一个事件可能会在范围结束前一秒安排在范围结束后一秒……所以我们确保解决并避免这个问题。
我正在尝试使用速率逻辑在两个状态之间创建转换:我希望该事件随机发生 x 次,但仅限于有限的模型时间间隔(例如从模型时间下午 1 点到凌晨 00 点,指定此事件只能在此时间范围内发生)。 你有什么建议吗? 非常感谢, P
使用特定消息更改从速率到消息的转换,如下所示:
然后,创建一个 returns double 值的函数。函数体应该是:
if( time() < x )
return 0;
else if( time() >= x && time() < y )
return rate;
else
return 0;
当然将x
和y
替换为费率不为0的时间段的开始时间和结束时间,将rate
替换为需要的费率。
然后创建触发类型速率的事件。在比率字段中写入 function()
。在操作字段中写入:
if( time() >= x && time() < y )
send( "rate", this);
发送消息之前的最后一个条件很重要,以防事件被安排在该范围之后。一个事件可能会在范围结束前一秒安排在范围结束后一秒……所以我们确保解决并避免这个问题。