Editing Decide Modules
Decide modules can be added to the flowchart view via dragging and dropping (see
Editing Create Modules for a demonstration) and edited by double clicking on the module. There are 4 types of
Decide modules.
2-way by Chance
This type of
Decide module will route entities one of two ways according to a given percentage. The percentage is specifed by the user and relates to the proprotion of entities that are routed to the
True exit point.
2-way by Condition
This type of
Decide module will route entities one of two ways depending on the condition. There are multiple types of conditions.
Variable
Arena evaluates a variable-based expression and routes to the
True exit point if the expression is true or the
False exit point otherwise.
Attribute
Arena evaluates an attribute-based expression and routes to the
True exit point if the expression is true or the
False exit point otherwise.
Consider the example of simulating queuing at a supermarket. If the entity attribute
QueueNumber is equal to 2 then that entity will be routed to the
True exit point which leads to processing at
Counter 2.
Entity Type
Arena will route all of entites of the specifed entity type to the
True exit point and all other entity types to the
False exit point.
Consider the example of simluating an egg sorting factory. Suppose an egg can be a size 6 egg or a size 7 egg depending on its weight. If an egg has the
Entity Type defined as 'size 6 egg' then that entity will be routed to the
True exit point which leads to the
Collection of Size 6 Eggs while all other eggs are routed to the
False exit point which leads to the
Collection of Size 7 Eggs.
Expression
Arena evaluates the expression and routes to the
True exit point if the expression is true or the
False exit point otherwise.
Consider the example of simulating the operations within an egg sorting factory over several weeks. Employees are rostered to work Monday to Friday however employees do not work on the weekend. The simluation must determine that it is not the weekend in order to simulate employees arriving for work. Using the built-in Arena variable
TNOW
(the current time) and the built-in Arena function
CalDayOfWeek(
...
)
we can determine if the day is Sunday = 1, Monday = 2, etc (up to Saturday Day 7) the following
Decide module could be used to determine if the factory should open for business.
NB: In plain English the above expression says: If the current day of the week is less than 1 (which means it is a Sunday) or is greater than 7 (which means it is a Saturday) route to the
True exit point.
N-way by Chance
This type of
Decide module is an extension of the 2-way by Chance
Decide module. This type of
Decide module will route entities any number of ways specified by the user and according to a given percentage. The percentage is specifed by the user and relates to the proprotion of entities that are routed to that particular exit point.
N-way by Condition
This type of
Decide module is an extension of the 2-way by Condition
Decide module.This type of
Decide module will route entities any number of ways specified by the user and according to a given condition. There are multiple types of conditions (as discussed above) and these are specifed by the user. Any entities that do not meet specified conditions are routed to the
False exit point.
--
MichaelOSullivan - 25 Aug 2009