BATCHSIZ.MOD

From Support

Jump to: navigation, search

Back to Model Library

See also: How to read .MOD pages

Contents

Description

BATCHSIZ.MOD represents a batched service, where more than one item is processed at a time. An example of a batched service is an oven in a bakery or shuttle bus that transports airline passengers, both which operate only when they have reached a certain capacity. In this model, a full batch is required for processing. This model is an enrichment of CARWASH.MOD, where rather than processing one job at a time, B (batchsize) jobs are processed at a time, and B jobs are required to be in the queue before service begins.

State Variables

State Variables in BATCHSIZ.MOD
Variable Name Abbreviations Variable Description Size Type
QUEUE Q Number of jobs waiting in line 1 Integer
SERVER S Number of servers available 1 Integer
BATCHSIZE B Size of batch for service 1,1 Integer

Vertices

Vertices in BATCHSIZ.MOD
Vertex Name Vertex Description State Changes
RUN The simulation is started None
ENTER Arrival of a job Q=Q+1
START Start of Service S=0, Q=Q-B
LEAVE End of Service S=1

Initialization Conditions

Initialization Conditions in BATCHSIZ.MOD
Variable Description
QUEUE Initial number of jobs waiting in line
BATCHSIZE Size of batch for service

Event Relationship Graph

BATCHSIZ.MOD
BATCHSIZ.MOD

English Translation

An English translation is a verbal description of a model, automatically generated by SIGMA.

The SIGMA Model, BATCHSIZ.MOD, is a discrete event simulation. 
It models A DETERMINISTIC QUEUE WITH BATCH SERVICE.
I. STATE VARIABLE DEFINITIONS.
For this simulation, the following state variables are defined:
  QUEUE: THE NUMBER OF JOBS WAITING IN LINE   (integer valued)
  SERVER: SERVER STATUS (IDLE/BUSY=1/0)   (integer valued)
  BATCHSIZE: SIZE OF BATCH FOR SERVICE   (integer valued)
II. EVENT DEFINITIONS.
Simulation state changes are represented by event vertices (nodes or balls) in a SIGMA graph.  
Event vertex parameters, if any, are given in parentheses.
Logical and dynamic relationships between pairs of events are represented in a SIGMA graph 
by edges (arrows) between event vertices.  
Unless otherwise stated, vertex execution priorities, to break time ties, are equal to 5.
1. The RUN(QUEUE,BATCHSIZE) event occurs when START OF THE RUN.
   Initial values for, QUEUE,BATCHSIZE, are needed for each run.
   This event causes the following state change(s):
   SERVER=1
   After every occurrence of the RUN event:
   Unconditionally, INITIATE THE FIRST JOB ARRIVAL;
   that is, schedule the ENTER() event to occur without delay.
2. The ENTER() event occurs when ARRIVAL OF A JOB.
   This event causes the following state change(s):
   QUEUE=QUEUE+1
   After every occurrence of the ENTER event:
   Unconditionally, SCHEDULE THE NEXT ARRIVAL;
   that is, schedule the ENTER() event to occur in 3+5*RND time units.
   (Time ties are broken by an execution priority of 6.)
   If SERVER>0 and QUEUE>=BATCHSIZE, then START SERVICE;
   that is, schedule the START() event to occur without delay.
3. The START() event occurs when START OF SERVICE.
   This event causes the following state change(s):
   SERVER=0
   QUEUE=QUEUE-BATCHSIZE
   After every occurrence of the START event:
   Unconditionally, THE JOB IS PLACED IN SERVICE FOR 5 MINUTES;
   that is, schedule the LEAVE() event to occur in 5 time units.
   (Time ties are broken by an execution priority of 6.)
4. The LEAVE() event occurs when END OF SERVICE.
   This event causes the following state change(s):
   SERVER=1
   After every occurrence of the LEAVE event:
   If QUEUE>=BATCHSIZE, then START SERVICING THE WAITING JOB;
   that is, schedule the START() event to occur without delay.

Comments

Back to top

Back to Model Library

Personal tools
Navigation