Home » Delays

Delays

The Evacuationz model has the ability to apply a time delay (in seconds by default) when an agent enters a node. A delay occurs only when an agent enters a node after moving from another during a simulation. An agent who populates a node at the start does not acquire the delay.

The default behaviour is that all agents entering a node are subject to a node delay test. However agents with specifically nominated AgentTypes can be included or excluded from the delay test. A probability can be assigned to a delay test to determine whether it is to be applied or not. The value is the probability that the test will be applied.

The simplest method to apply a delay is to define a fixed time either implicitly or explicitly.

<Node>
    <Delay>value</Delay>
    ...
</Node>

or

<Node>
    <Delay type="enz_fixed">value</Delay>
    ...
</Node>

Delay times can also be specified using a distribution.

<Node>
    <Delay type="enz_distribution">
        <Distribution type="enz_normal">
            ...
        </Distribution>
    </Delay>
    ...
</Node>

To assign a probability that the delay is applied then a <Probability> element can be added.

<Node>
    <Delay type="enz_fixed">
        <Probability>value</Probability>
        <Value>value</Value>
    </Delay>
    ...
</Node>

Note how a <Value> element is needed for a fixed delay so that the XML is correctly structured.

To include or exclude specified AgentTypes from the delay then the following is used:

<Node>
    <Delay type="enz_fixed">
        <AgentType exclude="enz_true">agent_type_name_1</AgentType>
        <AgentType include="enz_true">agent_type_name_2</AgentType>
        ...
    </Delay>
    ...
</Node>

There can be one or more AgentTypes excluded and included. Using the enz_false attribute has no meaning so it is ignored. Exclusions take priority over inclusions so excluding and including an AgentType will mean it is excluded for the delay test.