7.1 simmer
terminology
In this course we have already used some DES-specific terminology, e.g., event, state, entity, process or attribute. But there are, however, some simmer-specific terms, and some elements that require further explanation to understand the package architecture.
Resource: A passive entity, as it is commonly understood in standard DES terminology. However, simmer resources are conceived with queuing systems in mind, and therefore they comprise two internal self-managed parts:
- Server: which, conceptually, represents the resource itself. It has a specified capacity and can be seized and released.
- Queue: A priority queue of a certain size.
Manager: An active entity, i.e., a process, that has the ability to adjust properties of a resource (capacity and queue size) at run-time.
Source: A process responsible for creating new arrivals with a given inter-arrival time pattern and inserting them into the simulation model.
Arrival: A process capable of interacting with resources or other entities of the simulation model. It may have some attributes and prioritization values associated and, in general, a limited lifetime. Upon creation, every arrival is attached to a given trajectory.
Trajectory: An inter-linkage of activities constituting a recipe for arrivals attached to it, i.e., an ordered set of actions that must be executed. The simulation model is ultimately represented by a set of trajectories.
Activity: The individual unit of action that allows arrivals to interact with resources and other entities, perform custom routines while spending time in the system, move back and forth through the trajectory dynamically, and much more.
The R
API (Application Programming Interface) exposed by simmer
comprises two main elements: the simmer environment (or simulation environment) and the trajectory object.